2323"""
2424MONITOR 模块,调用接口汇总
2525"""
26+ from django .conf import settings
2627from django .utils .translation import gettext_lazy as _ # noqa
2728
2829from apps .api .base import DataAPI # noqa
@@ -34,134 +35,111 @@ class _MonitorApi(object):
3435 MODULE = _ ("Monitor监控平台" )
3536
3637 def __init__ (self ):
37- self .save_alarm_strategy = DataAPI (
38- method = "POST" ,
39- url = MONITOR_APIGATEWAY_ROOT + "save_alarm_strategy/" ,
40- module = self .MODULE ,
41- description = "保存告警策略" ,
42- default_return_value = None ,
43- before_request = add_esb_info_before_request ,
44- )
4538 self .search_user_groups = DataAPI (
4639 method = "POST" ,
47- url = MONITOR_APIGATEWAY_ROOT + "search_user_groups/" ,
40+ url = self . _build_url ( "user_group/search/" , "search_user_groups/" ) ,
4841 module = self .MODULE ,
4942 description = "查询通知组" ,
5043 default_return_value = None ,
5144 before_request = add_esb_info_before_request ,
5245 )
5346 self .save_notice_group = DataAPI (
5447 method = "POST" ,
55- url = MONITOR_APIGATEWAY_ROOT + "save_notice_group/" ,
48+ url = self . _build_url ( "user_group/save/" , "save_notice_group/" ) ,
5649 module = self .MODULE ,
5750 description = "保存通知组" ,
5851 default_return_value = None ,
5952 before_request = add_esb_info_before_request ,
6053 )
61- self .save_alarm_strategy_v2 = DataAPI (
62- method = "POST" ,
63- url = MONITOR_APIGATEWAY_ROOT + "save_alarm_strategy_v2/" ,
64- module = self .MODULE ,
65- description = "保存告警策略V2" ,
66- default_return_value = None ,
67- before_request = add_esb_info_before_request ,
68- )
69- self .search_alarm_strategy_v2 = DataAPI (
70- method = "POST" ,
71- url = MONITOR_APIGATEWAY_ROOT + "search_alarm_strategy_v2/" ,
72- module = self .MODULE ,
73- description = "查询告警策略V2" ,
74- default_return_value = None ,
75- before_request = add_esb_info_before_request ,
76- )
77- self .delete_alarm_strategy_v2 = DataAPI (
78- method = "POST" ,
79- url = MONITOR_APIGATEWAY_ROOT + "delete_alarm_strategy_v2/" ,
80- module = self .MODULE ,
81- description = "删除告警策略V2" ,
82- default_return_value = None ,
83- before_request = add_esb_info_before_request ,
84- )
8554 self .delete_alarm_strategy_v3 = DataAPI (
8655 method = "POST" ,
87- url = MONITOR_APIGATEWAY_ROOT + "delete_alarm_strategy_v3/" ,
56+ url = self . _build_url ( "alarm_strategy/delete/" , "delete_alarm_strategy_v3/" ) ,
8857 module = self .MODULE ,
8958 description = "删除告警策略V3" ,
9059 default_return_value = None ,
9160 before_request = add_esb_info_before_request ,
9261 )
9362 self .search_alarm_strategy_v3 = DataAPI (
9463 method = "POST" ,
95- url = MONITOR_APIGATEWAY_ROOT + "search_alarm_strategy_v3" ,
64+ url = self . _build_url ( "alarm_strategy/search/" , "search_alarm_strategy_v3" ) ,
9665 module = self .MODULE ,
9766 description = "查询告警策略V3" ,
9867 default_return_value = None ,
9968 before_request = add_esb_info_before_request ,
10069 )
10170 self .save_alarm_strategy_v3 = DataAPI (
10271 method = "POST" ,
103- url = MONITOR_APIGATEWAY_ROOT + "save_alarm_strategy_v3/" ,
72+ url = self . _build_url ( "alarm_strategy/save/" , "save_alarm_strategy_v3/" ) ,
10473 module = self .MODULE ,
10574 description = "保存告警策略V3" ,
10675 default_return_value = None ,
10776 before_request = add_esb_info_before_request ,
10877 )
10978 self .query_log_relation = DataAPI (
11079 method = "POST" ,
111- url = MONITOR_APIGATEWAY_ROOT + "query_log_relation" ,
80+ url = self . _build_url ( "apm/query_log_relation/" , "query_log_relation" ) ,
11281 module = self .MODULE ,
11382 description = "根据索引集id获取服务关联" ,
11483 default_return_value = None ,
11584 before_request = add_esb_info_before_request ,
11685 )
11786 self .create_or_update_report = DataAPI (
11887 method = "POST" ,
119- url = ( MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT ) + "create_or_update_report/" ,
88+ url = self . _build_url ( "new_report/create_or_update_report/" , "create_or_update_report/" ) ,
12089 module = self .MODULE ,
12190 description = "创建或更新订阅报表" ,
12291 default_return_value = None ,
12392 before_request = add_esb_info_before_request ,
12493 )
12594 self .send_report = DataAPI (
12695 method = "POST" ,
127- url = ( MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT ) + "send_report/" ,
96+ url = self . _build_url ( "new_report/send_report/" , "send_report/" ) ,
12897 module = self .MODULE ,
12998 description = "发送阅报表" ,
13099 default_return_value = None ,
131100 before_request = add_esb_info_before_request ,
132101 )
133102 self .get_reports = DataAPI (
134103 method = "GET" ,
135- url = ( MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT ) + "get_exist_reports/" ,
104+ url = self . _build_url ( "new_report/get_exist_reports/" , "get_exist_reports/" ) ,
136105 module = self .MODULE ,
137106 description = "获取已存在的订阅报表" ,
138107 default_return_value = None ,
139108 before_request = add_esb_info_before_request ,
140109 )
141110 self .get_report_variables = DataAPI (
142111 method = "GET" ,
143- url = ( MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT ) + "get_report_variables/" ,
112+ url = self . _build_url ( "new_report/get_report_variables/" , "get_report_variables/" ) ,
144113 module = self .MODULE ,
145114 description = "获取订阅报表的变量列表" ,
146115 default_return_value = None ,
147116 before_request = add_esb_info_before_request ,
148117 )
149118 self .search_alert = DataAPI (
150119 method = "POST" ,
151- url = ( MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT ) + "search_alert/" ,
120+ url = self . _build_url ( "alert/search/" , "search_alert/" ) ,
152121 module = self .MODULE ,
153122 description = "查询告警" ,
154123 default_return_value = None ,
155124 before_request = add_esb_info_before_request ,
156125 )
157126 self .get_alert_detail = DataAPI (
158127 method = "GET" ,
159- url = ( MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT ) + "get_alert_detail/" ,
128+ url = self . _build_url ( "alert/detail/" , "get_alert_detail/" ) ,
160129 module = self .MODULE ,
161130 description = "获取告警详情" ,
162131 default_return_value = None ,
163132 before_request = add_esb_info_before_request ,
164133 )
165134
135+ @property
136+ def use_apigw (self ):
137+ return settings .USE_NEW_MONITOR_APIGATEWAY
138+
139+ def _build_url (self , new_path , old_path ):
140+ return (
141+ f"{ MONITOR_APIGATEWAY_ROOT_NEW } app/{ new_path } " if self .use_apigw else f"{ MONITOR_APIGATEWAY_ROOT } { old_path } "
142+ )
143+
166144
167145MonitorApi = _MonitorApi ()
0 commit comments