From 4e7b0df5677f2ca7ab66ef0e3c4cc634de74f31b Mon Sep 17 00:00:00 2001 From: zzz833708 <498605991@qq.com> Date: Thu, 24 Apr 2025 18:14:18 +0800 Subject: [PATCH 1/5] =?UTF-8?q?feat:=20=E7=9B=91=E6=8E=A7=E7=BD=91?= =?UTF-8?q?=E5=85=B3api=20=E5=85=BC=E5=AE=B9=E6=97=A7esb=E7=BD=91=E5=85=B3?= =?UTF-8?q?=E5=92=8C=E6=96=B0=E7=BD=91=E5=85=B3=20#1010158081123701143?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bklog/apps/api/modules/monitor.py | 66 +++------ bklog/apps/api/modules/transfer.py | 129 +++++++++++------- bklog/apps/log_clustering/constants.py | 23 ++++ bklog/apps/log_clustering/handlers/pattern.py | 30 +++- bklog/apps/log_clustering/utils/monitor.py | 19 ++- bklog/config/default.py | 4 +- bklog/dev.env.yml | 2 +- bklog/prod.env.yml | 2 +- bklog/stag.env.yml | 2 +- 9 files changed, 172 insertions(+), 105 deletions(-) diff --git a/bklog/apps/api/modules/monitor.py b/bklog/apps/api/modules/monitor.py index c0fa55f3dd..5f24e1955d 100644 --- a/bklog/apps/api/modules/monitor.py +++ b/bklog/apps/api/modules/monitor.py @@ -23,6 +23,7 @@ """ MONITOR 模块,调用接口汇总 """ +from django.conf import settings from django.utils.translation import gettext_lazy as _ # noqa from apps.api.base import DataAPI # noqa @@ -34,17 +35,11 @@ class _MonitorApi(object): MODULE = _("Monitor监控平台") def __init__(self): - self.save_alarm_strategy = DataAPI( - method="POST", - url=MONITOR_APIGATEWAY_ROOT + "save_alarm_strategy/", - module=self.MODULE, - description="保存告警策略", - default_return_value=None, - before_request=add_esb_info_before_request, - ) + self.base_url = MONITOR_APIGATEWAY_ROOT_NEW if settings.NEW_MONITOR_APIGATEWAY_ROOT else MONITOR_APIGATEWAY_ROOT + self.search_user_groups = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "search_user_groups/", + url=self._build_url("app/user_group/search/", "search_user_groups/"), module=self.MODULE, description="查询通知组", default_return_value=None, @@ -52,39 +47,15 @@ def __init__(self): ) self.save_notice_group = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "save_notice_group/", + url=self._build_url("app/user_group/save/", "save_notice_group/"), module=self.MODULE, description="保存通知组", default_return_value=None, before_request=add_esb_info_before_request, ) - self.save_alarm_strategy_v2 = DataAPI( - method="POST", - url=MONITOR_APIGATEWAY_ROOT + "save_alarm_strategy_v2/", - module=self.MODULE, - description="保存告警策略V2", - default_return_value=None, - before_request=add_esb_info_before_request, - ) - self.search_alarm_strategy_v2 = DataAPI( - method="POST", - url=MONITOR_APIGATEWAY_ROOT + "search_alarm_strategy_v2/", - module=self.MODULE, - description="查询告警策略V2", - default_return_value=None, - before_request=add_esb_info_before_request, - ) - self.delete_alarm_strategy_v2 = DataAPI( - method="POST", - url=MONITOR_APIGATEWAY_ROOT + "delete_alarm_strategy_v2/", - module=self.MODULE, - description="删除告警策略V2", - default_return_value=None, - before_request=add_esb_info_before_request, - ) self.delete_alarm_strategy_v3 = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "delete_alarm_strategy_v3/", + url=self._build_url("app/alarm_strategy/delete/", "delete_alarm_strategy_v3/"), module=self.MODULE, description="删除告警策略V3", default_return_value=None, @@ -92,7 +63,7 @@ def __init__(self): ) self.search_alarm_strategy_v3 = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "search_alarm_strategy_v3", + url=self._build_url("app/alarm_strategy/search/", "search_alarm_strategy_v3"), module=self.MODULE, description="查询告警策略V3", default_return_value=None, @@ -100,7 +71,7 @@ def __init__(self): ) self.save_alarm_strategy_v3 = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "save_alarm_strategy_v3/", + url=self._build_url("app/alarm_strategy/save/", "save_alarm_strategy_v3/"), module=self.MODULE, description="保存告警策略V3", default_return_value=None, @@ -108,7 +79,7 @@ def __init__(self): ) self.query_log_relation = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "query_log_relation", + url=self._build_url("app/apm/query_log_relation/", "query_log_relation"), module=self.MODULE, description="根据索引集id获取服务关联", default_return_value=None, @@ -116,7 +87,7 @@ def __init__(self): ) self.create_or_update_report = DataAPI( method="POST", - url=(MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT) + "create_or_update_report/", + url=self._build_url("app/new_report/create_or_update_report/", "create_or_update_report/"), module=self.MODULE, description="创建或更新订阅报表", default_return_value=None, @@ -124,7 +95,7 @@ def __init__(self): ) self.send_report = DataAPI( method="POST", - url=(MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT) + "send_report/", + url=self._build_url("app/new_report/send_report/", "send_report/"), module=self.MODULE, description="发送阅报表", default_return_value=None, @@ -132,7 +103,7 @@ def __init__(self): ) self.get_reports = DataAPI( method="GET", - url=(MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT) + "get_exist_reports/", + url=self._build_url("app/new_report/get_exist_reports/", "get_exist_reports/"), module=self.MODULE, description="获取已存在的订阅报表", default_return_value=None, @@ -140,7 +111,7 @@ def __init__(self): ) self.get_report_variables = DataAPI( method="GET", - url=(MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT) + "get_report_variables/", + url=self._build_url("app/new_report/get_report_variables/", "get_report_variables/"), module=self.MODULE, description="获取订阅报表的变量列表", default_return_value=None, @@ -148,7 +119,7 @@ def __init__(self): ) self.search_alert = DataAPI( method="POST", - url=(MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT) + "search_alert/", + url=self._build_url("app/alert/search/", "search_alert/"), module=self.MODULE, description="查询告警", default_return_value=None, @@ -156,12 +127,19 @@ def __init__(self): ) self.get_alert_detail = DataAPI( method="GET", - url=(MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT) + "get_alert_detail/", + url=self._build_url("app/alert/detail/", "get_alert_detail/"), module=self.MODULE, description="获取告警详情", default_return_value=None, before_request=add_esb_info_before_request, ) + def _build_url(self, new_path, old_path): + return ( + f"{self.base_url}{new_path}" + if self.base_url == MONITOR_APIGATEWAY_ROOT_NEW + else f"{self.base_url}{old_path}" + ) + MonitorApi = _MonitorApi() diff --git a/bklog/apps/api/modules/transfer.py b/bklog/apps/api/modules/transfer.py index 97f66eb1bf..80502d8369 100644 --- a/bklog/apps/api/modules/transfer.py +++ b/bklog/apps/api/modules/transfer.py @@ -22,6 +22,7 @@ import base64 import json +from django.conf import settings from django.utils.translation import gettext_lazy as _ from apps.api.base import DataAPI @@ -118,79 +119,83 @@ class _TransferApi(object): MODULE = _("Metadata元数据") def __init__(self): + self.base_url = MONITOR_APIGATEWAY_ROOT_NEW if settings.NEW_MONITOR_APIGATEWAY_ROOT else MONITOR_APIGATEWAY_ROOT + self.create_data_id = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_create_data_id/", + url=self._build_url("app/metadata/create_data_id/", "metadata_create_data_id/"), module=self.MODULE, description=_("创建数据源"), before_request=add_esb_info_before_request, ) self.modify_data_id = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_data_id/", + url=self._build_url("app/metadata/modify_data_id/", "metadata_modify_data_id/"), module=self.MODULE, description=_("修改数据源"), before_request=add_esb_info_before_request, ) self.modify_datasource_result_table = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_datasource_result_table/", + url=self._build_url( + "app/metadata/modify_datasource_result_table/", "metadata_modify_datasource_result_table/" + ), module=self.MODULE, description=_("修改数据源与结果表的关系"), before_request=add_esb_info_before_request, ) self.create_result_table = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_create_result_table/", + url=self._build_url("app/metadata/create_result_table/", "metadata_create_result_table/"), module=self.MODULE, description=_("创建结果表"), before_request=add_esb_info_before_request, ) self.delete_cluster_info = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_delete_cluster_info/", + url=self._build_url("app/metadata/metadata_delete_cluster_info/", "metadata_delete_cluster_info/"), module=self.MODULE, description=_("删除存储集群"), before_request=add_esb_info_before_request, ) self.modify_result_table = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_result_table/", + url=self._build_url("app/metadata/modify_result_table/", "metadata_modify_result_table/"), module=self.MODULE, description=_("修改结果表"), before_request=modify_result_table_before, ) self.switch_result_table = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_result_table/", + url=self._build_url("app/metadata/modify_result_table/", "metadata_modify_result_table/"), module=self.MODULE, description=_("结果表起停"), before_request=add_esb_info_before_request, ) self.get_label = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_label/", + url=self._build_url("app/metadata/list_label/", "metadata_list_label/"), module=self.MODULE, description=_("获取数据源标签"), before_request=add_esb_info_before_request, ) self.get_data_id = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_get_data_id/", + url=self._build_url("app/metadata/get_data_id/", "metadata_get_data_id/"), module=self.MODULE, description=_("查询一个数据源的ID"), before_request=add_esb_info_before_request, ) self.get_result_table = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_get_result_table/", + url=self._build_url("app/metadata/get_result_table/", "metadata_get_result_table/"), module=self.MODULE, description=_("查询一个结果表的信息"), before_request=add_esb_info_before_request, ) self.get_result_table_storage = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_get_result_table_storage/", + url=self._build_url("app/metadata/get_result_table_storage/", "metadata_get_result_table_storage/"), module=self.MODULE, description=_("查询一个结果表的存储信息"), before_request=add_esb_info_before_request, @@ -198,7 +203,7 @@ def __init__(self): ) self.get_cluster_info = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_get_cluster_info/", + url=self._build_url("app/metadata/get_cluster_info/", "metadata_get_cluster_info/"), module=self.MODULE, description=_("查询存储集群列表"), before_request=add_esb_info_before_request, @@ -206,28 +211,28 @@ def __init__(self): ) self.create_cluster_info = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_create_cluster_info/", + url=self._build_url("app/metadata/create_cluster_info/", "metadata_create_cluster_info/"), module=self.MODULE, description=_("创建存储集群"), before_request=create_cluster_info_before, ) self.modify_cluster_info = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_cluster_info/", + url=self._build_url("app/metadata/modify_cluster_info/", "metadata_modify_cluster_info/"), module=self.MODULE, description=_("修改存储集群"), before_request=create_cluster_info_before, ) self.list_result_table = DataAPI( - method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_result_table/", + method="GET", + url=self._build_url("app/metadata/list_result_table/", "metadata_list_result_table/"), module=self.MODULE, - description=_("创建存储集群"), + description=_("查询监控结果表"), before_request=add_esb_info_before_request, ) self.list_transfer_cluster = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_transfer_cluster/", + url=self._build_url("app/metadata/list_transfer_cluster/", "metadata_list_transfer_cluster/"), module=self.MODULE, description=_("获取所有transfer集群信息"), before_request=add_esb_info_before_request, @@ -235,119 +240,142 @@ def __init__(self): self.create_es_snapshot_repository = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_create_es_snapshot_repository/", + url=self._build_url( + "app/metadata/create_es_snapshot_repository/", "metadata_create_es_snapshot_repository/" + ), module=self.MODULE, description=_("创建ES快照仓库"), before_request=add_esb_info_before_request, ) self.modify_es_snapshot_repository = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_es_snapshot_repository/", + url=self._build_url( + "app/metadata/modify_es_snapshot_repository/", "metadata_modify_es_snapshot_repository/" + ), module=self.MODULE, description=_("修改ES快照仓库"), before_request=add_esb_info_before_request, ) self.delete_es_snapshot_repository = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_delete_es_snapshot_repository/", + url=self._build_url( + "app/metadata/delete_es_snapshot_repository/", "metadata_delete_es_snapshot_repository/" + ), module=self.MODULE, description=_("删除ES快照仓库"), before_request=add_esb_info_before_request, ) self.verify_es_snapshot_repository = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_verify_es_snapshot_repository/", + url=self._build_url( + "app/metadata/verify_es_snapshot_repository/", "metadata_verify_es_snapshot_repository/" + ), module=self.MODULE, description=_("验证ES快照仓库"), before_request=add_esb_info_before_request, ) self.es_snapshot_repository = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_es_snapshot_repository/", + url=self._build_url("app/metadata/es_snapshot_repository/", "metadata_es_snapshot_repository/"), module=self.MODULE, description=_("查看指定ES快照仓库"), before_request=add_esb_info_before_request, ) self.list_es_snapshot_repository = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_es_snapshot_repository/", + url=self._build_url("app/metadata/list_es_snapshot_repository/", "metadata_list_es_snapshot_repository/"), module=self.MODULE, description=_("所有快照仓库列表"), before_request=add_esb_info_before_request, ) self.create_result_table_snapshot = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_create_result_table_snapshot/", + url=self._build_url("app/metadata/create_result_table_snapshot/", "metadata_create_result_table_snapshot/"), module=self.MODULE, description=_("创建结果表快照配置"), before_request=add_esb_info_before_request, ) self.modify_result_table_snapshot = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_result_table_snapshot/", + url=self._build_url("app/metadata/modify_result_table_snapshot/", "metadata_modify_result_table_snapshot/"), module=self.MODULE, description=_("修改结果表快照配置"), before_request=add_esb_info_before_request, ) self.delete_result_table_snapshot = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_delete_result_table_snapshot/", + url=self._build_url("app/metadata/delete_result_table_snapshot/", "metadata_delete_result_table_snapshot/"), module=self.MODULE, description=_("删除结果表快照配置"), before_request=add_esb_info_before_request, ) self.list_result_table_snapshot = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_result_table_snapshot/", + url=self._build_url("app/metadata/list_result_table_snapshot/", "metadata_list_result_table_snapshot/"), module=self.MODULE, description=_("结果表快照配置列表"), before_request=add_esb_info_before_request, ) self.list_result_table_snapshot_indices = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_result_table_snapshot_indices/", + url=self._build_url( + "app/metadata/list_result_table_snapshot_indices/", "metadata_list_result_table_snapshot_indices/" + ), module=self.MODULE, description=_("结果表快照配置列表含物理索引"), before_request=add_esb_info_before_request, ) self.get_result_table_snapshot_state = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_get_result_table_snapshot_state/", + url=self._build_url( + "app/metadata/get_result_table_snapshot_state/", "metadata_get_result_table_snapshot_state/" + ), module=self.MODULE, description=_("获取结果表快照状态"), before_request=add_esb_info_before_request, ) self.restore_result_table_snapshot = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_restore_result_table_snapshot/", + url=self._build_url( + "app/metadata/restore_result_table_snapshot/", "metadata_restore_result_table_snapshot/" + ), module=self.MODULE, description=_("快照回溯"), before_request=add_esb_info_before_request, ) self.modify_restore_result_table_snapshot = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_restore_result_table_snapshot/", + url=self._build_url( + "app/metadata/modify_restore_result_table_snapshot/", "metadata_modify_restore_result_table_snapshot/" + ), module=self.MODULE, description=_("修改快照回溯"), before_request=add_esb_info_before_request, ) self.delete_restore_result_table_snapshot = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_delete_restore_result_table_snapshot/", + url=self._build_url( + "app/metadata/delete_restore_result_table_snapshot/", "metadata_delete_restore_result_table_snapshot/" + ), module=self.MODULE, description=_("删除快照回溯"), before_request=add_esb_info_before_request, ) self.list_restore_result_table_snapshot = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_restore_result_table_snapshot/", + url=self._build_url( + "app/metadata/list_restore_result_table_snapshot/", "metadata_list_restore_result_table_snapshot/" + ), module=self.MODULE, description=_("快照回溯列表"), before_request=add_esb_info_before_request, ) self.get_restore_result_table_snapshot_state = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_get_restore_result_table_snapshot_state/", + url=self._build_url( + "app/metadata/get_restore_result_table_snapshot_state/", + "metadata_get_restore_result_table_snapshot_state/", + ), module=self.MODULE, description=_("快照回溯状态"), before_request=add_esb_info_before_request, @@ -356,21 +384,21 @@ def __init__(self): # bcs operate self.register_bcs_cluster = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "register_bcs_cluster/", + url=self._build_url("app/metadata/register_bcs_cluster/", "register_bcs_cluster/"), module=self.MODULE, description=_("注册bcs集群"), before_request=register_bcs_cluster_info_before_request, ) self.list_bcs_cluster_info = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "list_bcs_cluster_info/", + url=self._build_url("app/metadata/list_bcs_cluster_info/", "list_bcs_cluster_info/"), module=self.MODULE, description=_("list bcs集群"), before_request=add_esb_info_before_request, ) self.apply_yaml_to_bcs_cluster = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "apply_yaml_to_bcs_cluster/", + url=self._build_url("app/metadata/apply_yaml_to_bcs_cluster/", "apply_yaml_to_bcs_cluster/"), module=self.MODULE, description=_("apply yaml to bcs"), before_request=add_esb_info_before_request, @@ -379,28 +407,28 @@ def __init__(self): # space self.list_space_types = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_space_types/", + url=self._build_url("app/metadata/list_space_types/", "metadata_list_space_types/"), module=self.MODULE, description=_("查询空间类型列表"), before_request=add_esb_info_before_request, ) self.list_spaces = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_spaces/", + url=self._build_url("app/metadata/list_spaces/", "metadata_list_spaces/"), module=self.MODULE, description=_("查询空间实例列表"), before_request=add_esb_info_before_request, ) self.get_space_detail = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_get_space_detail/", + url=self._build_url("app/metadata/get_space_detail/", "metadata_get_space_detail/"), module=self.MODULE, description=_("查看具体空间实例详情"), before_request=add_esb_info_before_request, ) self.list_sticky_spaces = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_list_sticky_spaces/", + url=self._build_url("app/metadata/list_sticky_spaces/", "metadata_list_sticky_spaces/"), module=self.MODULE, description=_("查询置顶空间实例列表"), before_request=add_esb_info_before_request, @@ -408,39 +436,46 @@ def __init__(self): ) self.create_log_group = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_create_log_group/", + url=self._build_url("app/metadata/create_log_group/", "metadata_create_log_group/"), module=self.MODULE, description=_("创建自定义日志组"), before_request=add_esb_info_before_request, ) self.modify_log_group = DataAPI( method="POST", - url=MONITOR_APIGATEWAY_ROOT + "metadata_modify_log_group/", + url=self._build_url("app/metadata/modify_log_group/", "metadata_modify_log_group/"), module=self.MODULE, description=_("修改自定义日志组"), before_request=add_esb_info_before_request, ) self.get_log_group = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT + "metadata_get_log_group/", + url=self._build_url("app/metadata/get_log_group/", "metadata_get_log_group/"), module=self.MODULE, description=_("获取自定义日志组"), before_request=add_esb_info_before_request, ) self.create_or_update_es_router = DataAPI( method="POST", - url=(MONITOR_APIGATEWAY_ROOT_NEW or MONITOR_APIGATEWAY_ROOT) + "metadata_create_or_update_es_router/", + url=self._build_url("app/metadata/create_or_update_es_router/", "metadata_create_or_update_es_router/"), module=self.MODULE, description=_("创建或更新es路由"), before_request=add_esb_info_before_request, ) self.list_kafka_tail = DataAPI( method="GET", - url=MONITOR_APIGATEWAY_ROOT_NEW + "metadata_kafka_tail/", + url=self._build_url("app/metadata/kafka_tail/", "metadata_kafka_tail/"), module=self.MODULE, description=_("查询结果表MQ的最新数据"), before_request=add_esb_info_before_request, ) + def _build_url(self, new_path, old_path): + return ( + f"{self.base_url}{new_path}" + if self.base_url == MONITOR_APIGATEWAY_ROOT_NEW + else f"{self.base_url}{old_path}" + ) + Transfer = _TransferApi() diff --git a/bklog/apps/log_clustering/constants.py b/bklog/apps/log_clustering/constants.py index efa440e92b..6c50100b55 100644 --- a/bklog/apps/log_clustering/constants.py +++ b/bklog/apps/log_clustering/constants.py @@ -95,6 +95,29 @@ "uptime": {"calendars": [], "time_ranges": [{"start": "00:00", "end": "23:59"}]}, } +DEFAULT_ALERT_NOTICE = [ + { + "time_range": "00:00:00--23:59:00", + "notify_config": [ + {"notice_ways": [{"name": "rtx"}], "level": 3}, + {"notice_ways": [{"name": "rtx"}], "level": 2}, + {"notice_ways": [{"name": "rtx"}], "level": 1}, + ], + } +] + +DEFAULT_ACTION_NOTICE = [ + { + "time_range": "00:00:00--23:59:00", + "notify_config": [ + {"notice_ways": [{"name": "rtx"}], "phase": 3}, + {"notice_ways": [{"name": "rtx"}], "phase": 2}, + {"notice_ways": [{"name": "rtx"}], "phase": 1}, + ], + } +] + +DEFAULT_MENTION_LIST = [{"id": "all", "display_name": "all", "type": "group"}] DEFAULT_DETECTS = [ { diff --git a/bklog/apps/log_clustering/handlers/pattern.py b/bklog/apps/log_clustering/handlers/pattern.py index e43db8dceb..d214fd4150 100644 --- a/bklog/apps/log_clustering/handlers/pattern.py +++ b/bklog/apps/log_clustering/handlers/pattern.py @@ -24,6 +24,7 @@ from typing import List import arrow +from django.conf import settings from django.db.models import Q from django.db.transaction import atomic from django.utils.functional import cached_property @@ -31,6 +32,8 @@ from apps.api import MonitorApi from apps.log_clustering.constants import ( AGGS_FIELD_PREFIX, + DEFAULT_ACTION_NOTICE, + DEFAULT_ALERT_NOTICE, DEFAULT_LABEL, DOUBLE_PERCENTAGE, HOUR_MINUTES, @@ -439,12 +442,27 @@ def set_clustering_owner(self, params: dict): if not remark_obj.strategy_id or not remark_obj.strategy_enabled: return model_to_dict(remark_obj) # 更新告警组 - MonitorApi.save_notice_group( - params={ - "id": remark_obj.notice_group_id, - "notice_receiver": [{"type": "user", "id": name} for name in remark_obj.owners], - } - ) + if settings.NEW_MONITOR_APIGATEWAY_ROOT: + user_group = MonitorApi.search_user_groups( + {"bk_biz_ids": [self._clustering_config.bk_biz_id], "ids": [remark_obj.notice_group_id]} + )[0] + MonitorApi.save_notice_group( + params={ + "id": remark_obj.notice_group_id, + "name": user_group["name"], + "bk_biz_id": user_group["bk_biz_id"], + "duty_arranges": [{"users": [{"type": "user", "id": name} for name in remark_obj.owners]}], + "alert_notice": DEFAULT_ALERT_NOTICE, + "action_notice": DEFAULT_ACTION_NOTICE, + } + ) + else: + MonitorApi.save_notice_group( + params={ + "id": remark_obj.notice_group_id, + "notice_receiver": [{"type": "user", "id": name} for name in remark_obj.owners], + } + ) return model_to_dict(remark_obj) diff --git a/bklog/apps/log_clustering/utils/monitor.py b/bklog/apps/log_clustering/utils/monitor.py index f7a2817415..7c25be77a8 100644 --- a/bklog/apps/log_clustering/utils/monitor.py +++ b/bklog/apps/log_clustering/utils/monitor.py @@ -19,10 +19,14 @@ We undertake not to change the open source license (MIT license) applicable to the current version of the project delivered to anyone in the future. """ +from django.conf import settings from django.utils.translation import gettext_lazy as _ # noqa from apps.api import MonitorApi from apps.log_clustering.constants import ( + DEFAULT_ACTION_NOTICE, + DEFAULT_ALERT_NOTICE, + DEFAULT_MENTION_LIST, DEFAULT_NOTICE_WAY, DEFAULT_NOTIFY_RECEIVER_TYPE, ) @@ -34,15 +38,24 @@ class MonitorUtils(object): @classmethod def save_notice_group(cls, bk_biz_id: int, name: str, notice_way: dict, notice_receiver: list, message: str = ""): - return MonitorApi.save_notice_group( - params={ + if settings.NEW_MONITOR_APIGATEWAY_ROOT: + params = { + "bk_biz_id": bk_biz_id, + "name": name, + "duty_arranges": [{"users": notice_receiver}], + "mention_list": DEFAULT_MENTION_LIST, + "alert_notice": DEFAULT_ALERT_NOTICE, + "action_notice": DEFAULT_ACTION_NOTICE, + } + else: + params = { "bk_biz_id": bk_biz_id, "name": name, "message": message, "notice_way": notice_way, "notice_receiver": notice_receiver, } - ) + return MonitorApi.save_notice_group(params=params) @classmethod def generate_notice_receiver(cls, receivers, notice_tye: str): diff --git a/bklog/config/default.py b/bklog/config/default.py index 8a4ccde53c..330238b098 100644 --- a/bklog/config/default.py +++ b/bklog/config/default.py @@ -1089,8 +1089,8 @@ def redirect_func(request): # 外部版PAAS地址 EXTERNAL_PAAS_HOST = os.getenv("BKAPP_EXTERNAL_PAAS_HOST", "") -# 监控网关地址(新) -MONITOR_APIGATEWAY_ROOT_NEW = os.getenv("BKAPP_BKMONITOR_APIGW_HOST", "") +# 是否开启监控新网关地址 +NEW_MONITOR_APIGATEWAY_ROOT = os.getenv("BKAPP_NEW_BKMONITOR_APIGATEWAY_ROOT", "on") == "on" # 外部版网关密钥 EXTERNAL_APIGW_PUBLIC_KEY = os.getenv("BKAPP_EXTERNAL_APIGW_PUBLIC_KEY", "") diff --git a/bklog/dev.env.yml b/bklog/dev.env.yml index ca2e8a280c..7bb798879c 100644 --- a/bklog/dev.env.yml +++ b/bklog/dev.env.yml @@ -76,7 +76,7 @@ domains: JOB_APIGATEWAY_ROOT_V2: "{settings.PAAS_API_HOST}/api/c/compapi/v2/job/" JOB_APIGATEWAY_ROOT_V3: "{settings.PAAS_API_HOST}/api/c/compapi/v2/jobv3/" MONITOR_APIGATEWAY_ROOT: "{settings.PAAS_API_HOST}/api/c/compapi/v2/monitor_v3/" - MONITOR_APIGATEWAY_ROOT_NEW: "{settings.PAAS_API_HOST}/api/bkmonitorv3/prod/" + MONITOR_APIGATEWAY_ROOT_NEW: "{settings.PAAS_API_HOST}/api/bk-monitor/prod/" BCS_CC_APIGATEWAY_ROOT: "{settings.BCS_CC_APIGATEWAY_HOST}" BCS_APIGATEWAY_ROOT: "{settings.BCS_APIGATEWAY_HOST}" BK_SSM_ROOT: "{settings.BK_SSM_HOST}" diff --git a/bklog/prod.env.yml b/bklog/prod.env.yml index 68f30839c0..95d4e37415 100644 --- a/bklog/prod.env.yml +++ b/bklog/prod.env.yml @@ -76,7 +76,7 @@ domains: JOB_APIGATEWAY_ROOT_V2: "{settings.PAAS_API_HOST}/api/c/compapi/v2/job/" JOB_APIGATEWAY_ROOT_V3: "{settings.PAAS_API_HOST}/api/c/compapi/v2/jobv3/" MONITOR_APIGATEWAY_ROOT: "{settings.PAAS_API_HOST}/api/c/compapi/v2/monitor_v3/" - MONITOR_APIGATEWAY_ROOT_NEW: "{settings.PAAS_API_HOST}/api/bkmonitorv3/prod/" + MONITOR_APIGATEWAY_ROOT_NEW: "{settings.PAAS_API_HOST}/api/bk-monitor/prod/" BCS_CC_APIGATEWAY_ROOT: "{settings.BCS_CC_APIGATEWAY_HOST}" BCS_APIGATEWAY_ROOT: "{settings.BCS_APIGATEWAY_HOST}" BK_SSM_ROOT: "{settings.BK_SSM_HOST}" diff --git a/bklog/stag.env.yml b/bklog/stag.env.yml index 4537dbff28..368159ac82 100644 --- a/bklog/stag.env.yml +++ b/bklog/stag.env.yml @@ -76,7 +76,7 @@ domains: JOB_APIGATEWAY_ROOT_V2: "{settings.PAAS_API_HOST}/api/c/compapi/v2/job/" JOB_APIGATEWAY_ROOT_V3: "{settings.PAAS_API_HOST}/api/c/compapi/v2/jobv3/" MONITOR_APIGATEWAY_ROOT: "{settings.PAAS_API_HOST}/api/c/compapi/v2/monitor_v3/" - MONITOR_APIGATEWAY_ROOT_NEW: "{settings.PAAS_API_HOST}/api/bkmonitorv3/prod/" + MONITOR_APIGATEWAY_ROOT_NEW: "{settings.PAAS_API_HOST}/api/bk-monitor/prod/" BCS_CC_APIGATEWAY_ROOT: "{settings.BCS_CC_APIGATEWAY_HOST}" BCS_APIGATEWAY_ROOT: "{settings.BCS_APIGATEWAY_HOST}" BK_SSM_ROOT: "{settings.BK_SSM_HOST}" From 26d4a651a9064f2e60b7c545b597585fb849dc55 Mon Sep 17 00:00:00 2001 From: zzz833708 <498605991@qq.com> Date: Fri, 25 Apr 2025 15:10:15 +0800 Subject: [PATCH 2/5] =?UTF-8?q?feat:=20=E7=9B=91=E6=8E=A7=E7=BD=91?= =?UTF-8?q?=E5=85=B3api=20=E5=85=BC=E5=AE=B9=E6=97=A7esb=E7=BD=91=E5=85=B3?= =?UTF-8?q?=E5=92=8C=E6=96=B0=E7=BD=91=E5=85=B3=20#1010158081123701143?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bklog/apps/api/modules/monitor.py | 11 ++++------- bklog/apps/api/modules/transfer.py | 11 ++++------- bklog/apps/log_clustering/handlers/pattern.py | 2 +- bklog/apps/log_clustering/utils/monitor.py | 2 +- bklog/config/default.py | 4 ++-- 5 files changed, 12 insertions(+), 18 deletions(-) diff --git a/bklog/apps/api/modules/monitor.py b/bklog/apps/api/modules/monitor.py index 5f24e1955d..bd1fa965cc 100644 --- a/bklog/apps/api/modules/monitor.py +++ b/bklog/apps/api/modules/monitor.py @@ -35,8 +35,6 @@ class _MonitorApi(object): MODULE = _("Monitor监控平台") def __init__(self): - self.base_url = MONITOR_APIGATEWAY_ROOT_NEW if settings.NEW_MONITOR_APIGATEWAY_ROOT else MONITOR_APIGATEWAY_ROOT - self.search_user_groups = DataAPI( method="POST", url=self._build_url("app/user_group/search/", "search_user_groups/"), @@ -134,12 +132,11 @@ def __init__(self): before_request=add_esb_info_before_request, ) + def use_gw(self): + return settings.USE_NEW_MONITOR_APIGATEWAY + def _build_url(self, new_path, old_path): - return ( - f"{self.base_url}{new_path}" - if self.base_url == MONITOR_APIGATEWAY_ROOT_NEW - else f"{self.base_url}{old_path}" - ) + return f"{MONITOR_APIGATEWAY_ROOT_NEW}{new_path}" if self.use_gw() else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" MonitorApi = _MonitorApi() diff --git a/bklog/apps/api/modules/transfer.py b/bklog/apps/api/modules/transfer.py index 80502d8369..5b046333a2 100644 --- a/bklog/apps/api/modules/transfer.py +++ b/bklog/apps/api/modules/transfer.py @@ -119,8 +119,6 @@ class _TransferApi(object): MODULE = _("Metadata元数据") def __init__(self): - self.base_url = MONITOR_APIGATEWAY_ROOT_NEW if settings.NEW_MONITOR_APIGATEWAY_ROOT else MONITOR_APIGATEWAY_ROOT - self.create_data_id = DataAPI( method="POST", url=self._build_url("app/metadata/create_data_id/", "metadata_create_data_id/"), @@ -470,12 +468,11 @@ def __init__(self): before_request=add_esb_info_before_request, ) + def use_gw(self): + return settings.USE_NEW_MONITOR_APIGATEWAY + def _build_url(self, new_path, old_path): - return ( - f"{self.base_url}{new_path}" - if self.base_url == MONITOR_APIGATEWAY_ROOT_NEW - else f"{self.base_url}{old_path}" - ) + return f"{MONITOR_APIGATEWAY_ROOT_NEW}{new_path}" if self.use_gw() else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" Transfer = _TransferApi() diff --git a/bklog/apps/log_clustering/handlers/pattern.py b/bklog/apps/log_clustering/handlers/pattern.py index d214fd4150..9dbf6554a2 100644 --- a/bklog/apps/log_clustering/handlers/pattern.py +++ b/bklog/apps/log_clustering/handlers/pattern.py @@ -442,7 +442,7 @@ def set_clustering_owner(self, params: dict): if not remark_obj.strategy_id or not remark_obj.strategy_enabled: return model_to_dict(remark_obj) # 更新告警组 - if settings.NEW_MONITOR_APIGATEWAY_ROOT: + if settings.USE_NEW_MONITOR_APIGATEWAY: user_group = MonitorApi.search_user_groups( {"bk_biz_ids": [self._clustering_config.bk_biz_id], "ids": [remark_obj.notice_group_id]} )[0] diff --git a/bklog/apps/log_clustering/utils/monitor.py b/bklog/apps/log_clustering/utils/monitor.py index 7c25be77a8..cabf3f142d 100644 --- a/bklog/apps/log_clustering/utils/monitor.py +++ b/bklog/apps/log_clustering/utils/monitor.py @@ -38,7 +38,7 @@ class MonitorUtils(object): @classmethod def save_notice_group(cls, bk_biz_id: int, name: str, notice_way: dict, notice_receiver: list, message: str = ""): - if settings.NEW_MONITOR_APIGATEWAY_ROOT: + if settings.USE_NEW_MONITOR_APIGATEWAY: params = { "bk_biz_id": bk_biz_id, "name": name, diff --git a/bklog/config/default.py b/bklog/config/default.py index 330238b098..43b9280ffa 100644 --- a/bklog/config/default.py +++ b/bklog/config/default.py @@ -1089,8 +1089,8 @@ def redirect_func(request): # 外部版PAAS地址 EXTERNAL_PAAS_HOST = os.getenv("BKAPP_EXTERNAL_PAAS_HOST", "") -# 是否开启监控新网关地址 -NEW_MONITOR_APIGATEWAY_ROOT = os.getenv("BKAPP_NEW_BKMONITOR_APIGATEWAY_ROOT", "on") == "on" +# 是否使用新监控网关地址 +USE_NEW_MONITOR_APIGATEWAY = os.getenv("BKAPP_USE_NEW_MONITOR_APIGATEWAY", "on").lower() == "on" # 外部版网关密钥 EXTERNAL_APIGW_PUBLIC_KEY = os.getenv("BKAPP_EXTERNAL_APIGW_PUBLIC_KEY", "") From 6d3611a707153fbf118d08e84a9ca2a7f491d9b4 Mon Sep 17 00:00:00 2001 From: zzz833708 <498605991@qq.com> Date: Fri, 25 Apr 2025 15:29:00 +0800 Subject: [PATCH 3/5] =?UTF-8?q?feat:=20=E7=9B=91=E6=8E=A7=E7=BD=91?= =?UTF-8?q?=E5=85=B3api=20=E5=85=BC=E5=AE=B9=E6=97=A7esb=E7=BD=91=E5=85=B3?= =?UTF-8?q?=E5=92=8C=E6=96=B0=E7=BD=91=E5=85=B3=20#1010158081123701143?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bklog/config/default.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bklog/config/default.py b/bklog/config/default.py index 43b9280ffa..68cf7e0075 100644 --- a/bklog/config/default.py +++ b/bklog/config/default.py @@ -1090,7 +1090,7 @@ def redirect_func(request): EXTERNAL_PAAS_HOST = os.getenv("BKAPP_EXTERNAL_PAAS_HOST", "") # 是否使用新监控网关地址 -USE_NEW_MONITOR_APIGATEWAY = os.getenv("BKAPP_USE_NEW_MONITOR_APIGATEWAY", "on").lower() == "on" +USE_NEW_MONITOR_APIGATEWAY = os.getenv("BKAPP_USE_NEW_MONITOR_APIGATEWAY", "off").lower() == "on" # 外部版网关密钥 EXTERNAL_APIGW_PUBLIC_KEY = os.getenv("BKAPP_EXTERNAL_APIGW_PUBLIC_KEY", "") From 15b4a3b22264722237b3320db254fe63cc6658d0 Mon Sep 17 00:00:00 2001 From: zzz833708 <498605991@qq.com> Date: Fri, 25 Apr 2025 16:41:00 +0800 Subject: [PATCH 4/5] =?UTF-8?q?feat:=20=E7=9B=91=E6=8E=A7=E7=BD=91?= =?UTF-8?q?=E5=85=B3api=20=E5=85=BC=E5=AE=B9=E6=97=A7esb=E7=BD=91=E5=85=B3?= =?UTF-8?q?=E5=92=8C=E6=96=B0=E7=BD=91=E5=85=B3=20#1010158081123701143?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bklog/apps/api/modules/monitor.py | 7 ++--- bklog/apps/api/modules/transfer.py | 7 ++--- bklog/apps/log_clustering/handlers/pattern.py | 4 +-- bklog/apps/log_clustering/utils/monitor.py | 4 +-- bklog/apps/utils/apigw.py | 29 +++++++++++++++++++ 5 files changed, 37 insertions(+), 14 deletions(-) create mode 100644 bklog/apps/utils/apigw.py diff --git a/bklog/apps/api/modules/monitor.py b/bklog/apps/api/modules/monitor.py index bd1fa965cc..4eba1a7dc6 100644 --- a/bklog/apps/api/modules/monitor.py +++ b/bklog/apps/api/modules/monitor.py @@ -23,11 +23,11 @@ """ MONITOR 模块,调用接口汇总 """ -from django.conf import settings from django.utils.translation import gettext_lazy as _ # noqa from apps.api.base import DataAPI # noqa from apps.api.modules.utils import add_esb_info_before_request # noqa +from apps.utils.apigw import use_gw from config.domains import MONITOR_APIGATEWAY_ROOT, MONITOR_APIGATEWAY_ROOT_NEW # noqa @@ -132,11 +132,8 @@ def __init__(self): before_request=add_esb_info_before_request, ) - def use_gw(self): - return settings.USE_NEW_MONITOR_APIGATEWAY - def _build_url(self, new_path, old_path): - return f"{MONITOR_APIGATEWAY_ROOT_NEW}{new_path}" if self.use_gw() else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" + return f"{MONITOR_APIGATEWAY_ROOT_NEW}{new_path}" if use_gw() else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" MonitorApi = _MonitorApi() diff --git a/bklog/apps/api/modules/transfer.py b/bklog/apps/api/modules/transfer.py index 5b046333a2..76a4a34a5f 100644 --- a/bklog/apps/api/modules/transfer.py +++ b/bklog/apps/api/modules/transfer.py @@ -22,11 +22,11 @@ import base64 import json -from django.conf import settings from django.utils.translation import gettext_lazy as _ from apps.api.base import DataAPI from apps.api.modules.utils import add_esb_info_before_request +from apps.utils.apigw import use_gw from config.domains import MONITOR_APIGATEWAY_ROOT, MONITOR_APIGATEWAY_ROOT_NEW @@ -468,11 +468,8 @@ def __init__(self): before_request=add_esb_info_before_request, ) - def use_gw(self): - return settings.USE_NEW_MONITOR_APIGATEWAY - def _build_url(self, new_path, old_path): - return f"{MONITOR_APIGATEWAY_ROOT_NEW}{new_path}" if self.use_gw() else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" + return f"{MONITOR_APIGATEWAY_ROOT_NEW}{new_path}" if use_gw() else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" Transfer = _TransferApi() diff --git a/bklog/apps/log_clustering/handlers/pattern.py b/bklog/apps/log_clustering/handlers/pattern.py index 9dbf6554a2..d1eef37750 100644 --- a/bklog/apps/log_clustering/handlers/pattern.py +++ b/bklog/apps/log_clustering/handlers/pattern.py @@ -24,7 +24,6 @@ from typing import List import arrow -from django.conf import settings from django.db.models import Q from django.db.transaction import atomic from django.utils.functional import cached_property @@ -55,6 +54,7 @@ ) from apps.log_search.handlers.search.aggs_handlers import AggsHandlers from apps.models import model_to_dict +from apps.utils.apigw import use_gw from apps.utils.bkdata import BkData from apps.utils.db import array_hash from apps.utils.function import map_if @@ -442,7 +442,7 @@ def set_clustering_owner(self, params: dict): if not remark_obj.strategy_id or not remark_obj.strategy_enabled: return model_to_dict(remark_obj) # 更新告警组 - if settings.USE_NEW_MONITOR_APIGATEWAY: + if use_gw(): user_group = MonitorApi.search_user_groups( {"bk_biz_ids": [self._clustering_config.bk_biz_id], "ids": [remark_obj.notice_group_id]} )[0] diff --git a/bklog/apps/log_clustering/utils/monitor.py b/bklog/apps/log_clustering/utils/monitor.py index cabf3f142d..ee3fb86870 100644 --- a/bklog/apps/log_clustering/utils/monitor.py +++ b/bklog/apps/log_clustering/utils/monitor.py @@ -19,7 +19,6 @@ We undertake not to change the open source license (MIT license) applicable to the current version of the project delivered to anyone in the future. """ -from django.conf import settings from django.utils.translation import gettext_lazy as _ # noqa from apps.api import MonitorApi @@ -33,12 +32,13 @@ from apps.log_clustering.models import ClusteringConfig, NoticeGroup from apps.log_databus.constants import EMPTY_REQUEST_USER from apps.log_search.models import LogIndexSet +from apps.utils.apigw import use_gw class MonitorUtils(object): @classmethod def save_notice_group(cls, bk_biz_id: int, name: str, notice_way: dict, notice_receiver: list, message: str = ""): - if settings.USE_NEW_MONITOR_APIGATEWAY: + if use_gw(): params = { "bk_biz_id": bk_biz_id, "name": name, diff --git a/bklog/apps/utils/apigw.py b/bklog/apps/utils/apigw.py new file mode 100644 index 0000000000..863c315d03 --- /dev/null +++ b/bklog/apps/utils/apigw.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +""" +Tencent is pleased to support the open source community by making BK-LOG 蓝鲸日志平台 available. +Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved. +BK-LOG 蓝鲸日志平台 is licensed under the MIT License. +License for BK-LOG 蓝鲸日志平台: +-------------------------------------------------------------------- +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, +and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all copies or substantial +portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT +LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +We undertake not to change the open source license (MIT license) applicable to the current version of +the project delivered to anyone in the future. +""" +from django.conf import settings + + +def use_gw(): + """ + 是否使用新监控网关 + """ + return settings.USE_NEW_MONITOR_APIGATEWAY From 1e0297dea59baa41f201450cde9da18b00c5d6d4 Mon Sep 17 00:00:00 2001 From: zzz833708 <498605991@qq.com> Date: Fri, 9 May 2025 16:49:16 +0800 Subject: [PATCH 5/5] =?UTF-8?q?feat:=20=E7=9B=91=E6=8E=A7=E7=BD=91?= =?UTF-8?q?=E5=85=B3api=20=E5=85=BC=E5=AE=B9=E6=97=A7esb=E7=BD=91=E5=85=B3?= =?UTF-8?q?=E5=92=8C=E6=96=B0=E7=BD=91=E5=85=B3=20#1010158081123701143?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bklog/apps/api/modules/monitor.py | 34 +++-- bklog/apps/api/modules/transfer.py | 120 ++++++++---------- bklog/apps/log_clustering/handlers/pattern.py | 4 +- bklog/apps/log_clustering/utils/monitor.py | 4 +- bklog/apps/utils/apigw.py | 29 ----- 5 files changed, 79 insertions(+), 112 deletions(-) delete mode 100644 bklog/apps/utils/apigw.py diff --git a/bklog/apps/api/modules/monitor.py b/bklog/apps/api/modules/monitor.py index 4eba1a7dc6..f865cbfc66 100644 --- a/bklog/apps/api/modules/monitor.py +++ b/bklog/apps/api/modules/monitor.py @@ -23,11 +23,11 @@ """ MONITOR 模块,调用接口汇总 """ +from django.conf import settings from django.utils.translation import gettext_lazy as _ # noqa from apps.api.base import DataAPI # noqa from apps.api.modules.utils import add_esb_info_before_request # noqa -from apps.utils.apigw import use_gw from config.domains import MONITOR_APIGATEWAY_ROOT, MONITOR_APIGATEWAY_ROOT_NEW # noqa @@ -37,7 +37,7 @@ class _MonitorApi(object): def __init__(self): self.search_user_groups = DataAPI( method="POST", - url=self._build_url("app/user_group/search/", "search_user_groups/"), + url=self._build_url("user_group/search/", "search_user_groups/"), module=self.MODULE, description="查询通知组", default_return_value=None, @@ -45,7 +45,7 @@ def __init__(self): ) self.save_notice_group = DataAPI( method="POST", - url=self._build_url("app/user_group/save/", "save_notice_group/"), + url=self._build_url("user_group/save/", "save_notice_group/"), module=self.MODULE, description="保存通知组", default_return_value=None, @@ -53,7 +53,7 @@ def __init__(self): ) self.delete_alarm_strategy_v3 = DataAPI( method="POST", - url=self._build_url("app/alarm_strategy/delete/", "delete_alarm_strategy_v3/"), + url=self._build_url("alarm_strategy/delete/", "delete_alarm_strategy_v3/"), module=self.MODULE, description="删除告警策略V3", default_return_value=None, @@ -61,7 +61,7 @@ def __init__(self): ) self.search_alarm_strategy_v3 = DataAPI( method="POST", - url=self._build_url("app/alarm_strategy/search/", "search_alarm_strategy_v3"), + url=self._build_url("alarm_strategy/search/", "search_alarm_strategy_v3"), module=self.MODULE, description="查询告警策略V3", default_return_value=None, @@ -69,7 +69,7 @@ def __init__(self): ) self.save_alarm_strategy_v3 = DataAPI( method="POST", - url=self._build_url("app/alarm_strategy/save/", "save_alarm_strategy_v3/"), + url=self._build_url("alarm_strategy/save/", "save_alarm_strategy_v3/"), module=self.MODULE, description="保存告警策略V3", default_return_value=None, @@ -77,7 +77,7 @@ def __init__(self): ) self.query_log_relation = DataAPI( method="POST", - url=self._build_url("app/apm/query_log_relation/", "query_log_relation"), + url=self._build_url("apm/query_log_relation/", "query_log_relation"), module=self.MODULE, description="根据索引集id获取服务关联", default_return_value=None, @@ -85,7 +85,7 @@ def __init__(self): ) self.create_or_update_report = DataAPI( method="POST", - url=self._build_url("app/new_report/create_or_update_report/", "create_or_update_report/"), + url=self._build_url("new_report/create_or_update_report/", "create_or_update_report/"), module=self.MODULE, description="创建或更新订阅报表", default_return_value=None, @@ -93,7 +93,7 @@ def __init__(self): ) self.send_report = DataAPI( method="POST", - url=self._build_url("app/new_report/send_report/", "send_report/"), + url=self._build_url("new_report/send_report/", "send_report/"), module=self.MODULE, description="发送阅报表", default_return_value=None, @@ -101,7 +101,7 @@ def __init__(self): ) self.get_reports = DataAPI( method="GET", - url=self._build_url("app/new_report/get_exist_reports/", "get_exist_reports/"), + url=self._build_url("new_report/get_exist_reports/", "get_exist_reports/"), module=self.MODULE, description="获取已存在的订阅报表", default_return_value=None, @@ -109,7 +109,7 @@ def __init__(self): ) self.get_report_variables = DataAPI( method="GET", - url=self._build_url("app/new_report/get_report_variables/", "get_report_variables/"), + url=self._build_url("new_report/get_report_variables/", "get_report_variables/"), module=self.MODULE, description="获取订阅报表的变量列表", default_return_value=None, @@ -117,7 +117,7 @@ def __init__(self): ) self.search_alert = DataAPI( method="POST", - url=self._build_url("app/alert/search/", "search_alert/"), + url=self._build_url("alert/search/", "search_alert/"), module=self.MODULE, description="查询告警", default_return_value=None, @@ -125,15 +125,21 @@ def __init__(self): ) self.get_alert_detail = DataAPI( method="GET", - url=self._build_url("app/alert/detail/", "get_alert_detail/"), + url=self._build_url("alert/detail/", "get_alert_detail/"), module=self.MODULE, description="获取告警详情", default_return_value=None, before_request=add_esb_info_before_request, ) + @property + def use_apigw(self): + return settings.USE_NEW_MONITOR_APIGATEWAY + def _build_url(self, new_path, old_path): - return f"{MONITOR_APIGATEWAY_ROOT_NEW}{new_path}" if use_gw() else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" + return ( + f"{MONITOR_APIGATEWAY_ROOT_NEW}app/{new_path}" if self.use_apigw else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" + ) MonitorApi = _MonitorApi() diff --git a/bklog/apps/api/modules/transfer.py b/bklog/apps/api/modules/transfer.py index 76a4a34a5f..220a75489b 100644 --- a/bklog/apps/api/modules/transfer.py +++ b/bklog/apps/api/modules/transfer.py @@ -22,11 +22,11 @@ import base64 import json +from django.conf import settings from django.utils.translation import gettext_lazy as _ from apps.api.base import DataAPI from apps.api.modules.utils import add_esb_info_before_request -from apps.utils.apigw import use_gw from config.domains import MONITOR_APIGATEWAY_ROOT, MONITOR_APIGATEWAY_ROOT_NEW @@ -121,79 +121,77 @@ class _TransferApi(object): def __init__(self): self.create_data_id = DataAPI( method="POST", - url=self._build_url("app/metadata/create_data_id/", "metadata_create_data_id/"), + url=self._build_url("create_data_id/", "metadata_create_data_id/"), module=self.MODULE, description=_("创建数据源"), before_request=add_esb_info_before_request, ) self.modify_data_id = DataAPI( method="POST", - url=self._build_url("app/metadata/modify_data_id/", "metadata_modify_data_id/"), + url=self._build_url("modify_data_id/", "metadata_modify_data_id/"), module=self.MODULE, description=_("修改数据源"), before_request=add_esb_info_before_request, ) self.modify_datasource_result_table = DataAPI( method="POST", - url=self._build_url( - "app/metadata/modify_datasource_result_table/", "metadata_modify_datasource_result_table/" - ), + url=self._build_url("modify_datasource_result_table/", "metadata_modify_datasource_result_table/"), module=self.MODULE, description=_("修改数据源与结果表的关系"), before_request=add_esb_info_before_request, ) self.create_result_table = DataAPI( method="POST", - url=self._build_url("app/metadata/create_result_table/", "metadata_create_result_table/"), + url=self._build_url("create_result_table/", "metadata_create_result_table/"), module=self.MODULE, description=_("创建结果表"), before_request=add_esb_info_before_request, ) self.delete_cluster_info = DataAPI( method="POST", - url=self._build_url("app/metadata/metadata_delete_cluster_info/", "metadata_delete_cluster_info/"), + url=self._build_url("metadata_delete_cluster_info/", "metadata_delete_cluster_info/"), module=self.MODULE, description=_("删除存储集群"), before_request=add_esb_info_before_request, ) self.modify_result_table = DataAPI( method="POST", - url=self._build_url("app/metadata/modify_result_table/", "metadata_modify_result_table/"), + url=self._build_url("modify_result_table/", "metadata_modify_result_table/"), module=self.MODULE, description=_("修改结果表"), before_request=modify_result_table_before, ) self.switch_result_table = DataAPI( method="POST", - url=self._build_url("app/metadata/modify_result_table/", "metadata_modify_result_table/"), + url=self._build_url("modify_result_table/", "metadata_modify_result_table/"), module=self.MODULE, description=_("结果表起停"), before_request=add_esb_info_before_request, ) self.get_label = DataAPI( method="GET", - url=self._build_url("app/metadata/list_label/", "metadata_list_label/"), + url=self._build_url("list_label/", "metadata_list_label/"), module=self.MODULE, description=_("获取数据源标签"), before_request=add_esb_info_before_request, ) self.get_data_id = DataAPI( method="GET", - url=self._build_url("app/metadata/get_data_id/", "metadata_get_data_id/"), + url=self._build_url("get_data_id/", "metadata_get_data_id/"), module=self.MODULE, description=_("查询一个数据源的ID"), before_request=add_esb_info_before_request, ) self.get_result_table = DataAPI( method="GET", - url=self._build_url("app/metadata/get_result_table/", "metadata_get_result_table/"), + url=self._build_url("get_result_table/", "metadata_get_result_table/"), module=self.MODULE, description=_("查询一个结果表的信息"), before_request=add_esb_info_before_request, ) self.get_result_table_storage = DataAPI( method="GET", - url=self._build_url("app/metadata/get_result_table_storage/", "metadata_get_result_table_storage/"), + url=self._build_url("get_result_table_storage/", "metadata_get_result_table_storage/"), module=self.MODULE, description=_("查询一个结果表的存储信息"), before_request=add_esb_info_before_request, @@ -201,7 +199,7 @@ def __init__(self): ) self.get_cluster_info = DataAPI( method="GET", - url=self._build_url("app/metadata/get_cluster_info/", "metadata_get_cluster_info/"), + url=self._build_url("get_cluster_info/", "metadata_get_cluster_info/"), module=self.MODULE, description=_("查询存储集群列表"), before_request=add_esb_info_before_request, @@ -209,28 +207,28 @@ def __init__(self): ) self.create_cluster_info = DataAPI( method="POST", - url=self._build_url("app/metadata/create_cluster_info/", "metadata_create_cluster_info/"), + url=self._build_url("create_cluster_info/", "metadata_create_cluster_info/"), module=self.MODULE, description=_("创建存储集群"), before_request=create_cluster_info_before, ) self.modify_cluster_info = DataAPI( method="POST", - url=self._build_url("app/metadata/modify_cluster_info/", "metadata_modify_cluster_info/"), + url=self._build_url("modify_cluster_info/", "metadata_modify_cluster_info/"), module=self.MODULE, description=_("修改存储集群"), before_request=create_cluster_info_before, ) self.list_result_table = DataAPI( method="GET", - url=self._build_url("app/metadata/list_result_table/", "metadata_list_result_table/"), + url=self._build_url("list_result_table/", "metadata_list_result_table/"), module=self.MODULE, description=_("查询监控结果表"), before_request=add_esb_info_before_request, ) self.list_transfer_cluster = DataAPI( method="GET", - url=self._build_url("app/metadata/list_transfer_cluster/", "metadata_list_transfer_cluster/"), + url=self._build_url("list_transfer_cluster/", "metadata_list_transfer_cluster/"), module=self.MODULE, description=_("获取所有transfer集群信息"), before_request=add_esb_info_before_request, @@ -238,105 +236,91 @@ def __init__(self): self.create_es_snapshot_repository = DataAPI( method="POST", - url=self._build_url( - "app/metadata/create_es_snapshot_repository/", "metadata_create_es_snapshot_repository/" - ), + url=self._build_url("create_es_snapshot_repository/", "metadata_create_es_snapshot_repository/"), module=self.MODULE, description=_("创建ES快照仓库"), before_request=add_esb_info_before_request, ) self.modify_es_snapshot_repository = DataAPI( method="POST", - url=self._build_url( - "app/metadata/modify_es_snapshot_repository/", "metadata_modify_es_snapshot_repository/" - ), + url=self._build_url("modify_es_snapshot_repository/", "metadata_modify_es_snapshot_repository/"), module=self.MODULE, description=_("修改ES快照仓库"), before_request=add_esb_info_before_request, ) self.delete_es_snapshot_repository = DataAPI( method="POST", - url=self._build_url( - "app/metadata/delete_es_snapshot_repository/", "metadata_delete_es_snapshot_repository/" - ), + url=self._build_url("delete_es_snapshot_repository/", "metadata_delete_es_snapshot_repository/"), module=self.MODULE, description=_("删除ES快照仓库"), before_request=add_esb_info_before_request, ) self.verify_es_snapshot_repository = DataAPI( method="GET", - url=self._build_url( - "app/metadata/verify_es_snapshot_repository/", "metadata_verify_es_snapshot_repository/" - ), + url=self._build_url("verify_es_snapshot_repository/", "metadata_verify_es_snapshot_repository/"), module=self.MODULE, description=_("验证ES快照仓库"), before_request=add_esb_info_before_request, ) self.es_snapshot_repository = DataAPI( method="GET", - url=self._build_url("app/metadata/es_snapshot_repository/", "metadata_es_snapshot_repository/"), + url=self._build_url("es_snapshot_repository/", "metadata_es_snapshot_repository/"), module=self.MODULE, description=_("查看指定ES快照仓库"), before_request=add_esb_info_before_request, ) self.list_es_snapshot_repository = DataAPI( method="POST", - url=self._build_url("app/metadata/list_es_snapshot_repository/", "metadata_list_es_snapshot_repository/"), + url=self._build_url("list_es_snapshot_repository/", "metadata_list_es_snapshot_repository/"), module=self.MODULE, description=_("所有快照仓库列表"), before_request=add_esb_info_before_request, ) self.create_result_table_snapshot = DataAPI( method="POST", - url=self._build_url("app/metadata/create_result_table_snapshot/", "metadata_create_result_table_snapshot/"), + url=self._build_url("create_result_table_snapshot/", "metadata_create_result_table_snapshot/"), module=self.MODULE, description=_("创建结果表快照配置"), before_request=add_esb_info_before_request, ) self.modify_result_table_snapshot = DataAPI( method="POST", - url=self._build_url("app/metadata/modify_result_table_snapshot/", "metadata_modify_result_table_snapshot/"), + url=self._build_url("modify_result_table_snapshot/", "metadata_modify_result_table_snapshot/"), module=self.MODULE, description=_("修改结果表快照配置"), before_request=add_esb_info_before_request, ) self.delete_result_table_snapshot = DataAPI( method="POST", - url=self._build_url("app/metadata/delete_result_table_snapshot/", "metadata_delete_result_table_snapshot/"), + url=self._build_url("delete_result_table_snapshot/", "metadata_delete_result_table_snapshot/"), module=self.MODULE, description=_("删除结果表快照配置"), before_request=add_esb_info_before_request, ) self.list_result_table_snapshot = DataAPI( method="POST", - url=self._build_url("app/metadata/list_result_table_snapshot/", "metadata_list_result_table_snapshot/"), + url=self._build_url("list_result_table_snapshot/", "metadata_list_result_table_snapshot/"), module=self.MODULE, description=_("结果表快照配置列表"), before_request=add_esb_info_before_request, ) self.list_result_table_snapshot_indices = DataAPI( method="POST", - url=self._build_url( - "app/metadata/list_result_table_snapshot_indices/", "metadata_list_result_table_snapshot_indices/" - ), + url=self._build_url("list_result_table_snapshot_indices/", "metadata_list_result_table_snapshot_indices/"), module=self.MODULE, description=_("结果表快照配置列表含物理索引"), before_request=add_esb_info_before_request, ) self.get_result_table_snapshot_state = DataAPI( method="POST", - url=self._build_url( - "app/metadata/get_result_table_snapshot_state/", "metadata_get_result_table_snapshot_state/" - ), + url=self._build_url("get_result_table_snapshot_state/", "metadata_get_result_table_snapshot_state/"), module=self.MODULE, description=_("获取结果表快照状态"), before_request=add_esb_info_before_request, ) self.restore_result_table_snapshot = DataAPI( method="POST", - url=self._build_url( - "app/metadata/restore_result_table_snapshot/", "metadata_restore_result_table_snapshot/" - ), + url=self._build_url("restore_result_table_snapshot/", "metadata_restore_result_table_snapshot/"), module=self.MODULE, description=_("快照回溯"), before_request=add_esb_info_before_request, @@ -344,7 +328,7 @@ def __init__(self): self.modify_restore_result_table_snapshot = DataAPI( method="POST", url=self._build_url( - "app/metadata/modify_restore_result_table_snapshot/", "metadata_modify_restore_result_table_snapshot/" + "modify_restore_result_table_snapshot/", "metadata_modify_restore_result_table_snapshot/" ), module=self.MODULE, description=_("修改快照回溯"), @@ -353,7 +337,7 @@ def __init__(self): self.delete_restore_result_table_snapshot = DataAPI( method="POST", url=self._build_url( - "app/metadata/delete_restore_result_table_snapshot/", "metadata_delete_restore_result_table_snapshot/" + "delete_restore_result_table_snapshot/", "metadata_delete_restore_result_table_snapshot/" ), module=self.MODULE, description=_("删除快照回溯"), @@ -361,9 +345,7 @@ def __init__(self): ) self.list_restore_result_table_snapshot = DataAPI( method="POST", - url=self._build_url( - "app/metadata/list_restore_result_table_snapshot/", "metadata_list_restore_result_table_snapshot/" - ), + url=self._build_url("list_restore_result_table_snapshot/", "metadata_list_restore_result_table_snapshot/"), module=self.MODULE, description=_("快照回溯列表"), before_request=add_esb_info_before_request, @@ -371,7 +353,7 @@ def __init__(self): self.get_restore_result_table_snapshot_state = DataAPI( method="POST", url=self._build_url( - "app/metadata/get_restore_result_table_snapshot_state/", + "get_restore_result_table_snapshot_state/", "metadata_get_restore_result_table_snapshot_state/", ), module=self.MODULE, @@ -382,21 +364,21 @@ def __init__(self): # bcs operate self.register_bcs_cluster = DataAPI( method="POST", - url=self._build_url("app/metadata/register_bcs_cluster/", "register_bcs_cluster/"), + url=self._build_url("register_bcs_cluster/", "register_bcs_cluster/"), module=self.MODULE, description=_("注册bcs集群"), before_request=register_bcs_cluster_info_before_request, ) self.list_bcs_cluster_info = DataAPI( method="GET", - url=self._build_url("app/metadata/list_bcs_cluster_info/", "list_bcs_cluster_info/"), + url=self._build_url("list_bcs_cluster_info/", "list_bcs_cluster_info/"), module=self.MODULE, description=_("list bcs集群"), before_request=add_esb_info_before_request, ) self.apply_yaml_to_bcs_cluster = DataAPI( method="POST", - url=self._build_url("app/metadata/apply_yaml_to_bcs_cluster/", "apply_yaml_to_bcs_cluster/"), + url=self._build_url("apply_yaml_to_bcs_cluster/", "apply_yaml_to_bcs_cluster/"), module=self.MODULE, description=_("apply yaml to bcs"), before_request=add_esb_info_before_request, @@ -405,28 +387,28 @@ def __init__(self): # space self.list_space_types = DataAPI( method="GET", - url=self._build_url("app/metadata/list_space_types/", "metadata_list_space_types/"), + url=self._build_url("list_space_types/", "metadata_list_space_types/"), module=self.MODULE, description=_("查询空间类型列表"), before_request=add_esb_info_before_request, ) self.list_spaces = DataAPI( method="GET", - url=self._build_url("app/metadata/list_spaces/", "metadata_list_spaces/"), + url=self._build_url("list_spaces/", "metadata_list_spaces/"), module=self.MODULE, description=_("查询空间实例列表"), before_request=add_esb_info_before_request, ) self.get_space_detail = DataAPI( method="GET", - url=self._build_url("app/metadata/get_space_detail/", "metadata_get_space_detail/"), + url=self._build_url("get_space_detail/", "metadata_get_space_detail/"), module=self.MODULE, description=_("查看具体空间实例详情"), before_request=add_esb_info_before_request, ) self.list_sticky_spaces = DataAPI( method="GET", - url=self._build_url("app/metadata/list_sticky_spaces/", "metadata_list_sticky_spaces/"), + url=self._build_url("list_sticky_spaces/", "metadata_list_sticky_spaces/"), module=self.MODULE, description=_("查询置顶空间实例列表"), before_request=add_esb_info_before_request, @@ -434,42 +416,50 @@ def __init__(self): ) self.create_log_group = DataAPI( method="POST", - url=self._build_url("app/metadata/create_log_group/", "metadata_create_log_group/"), + url=self._build_url("create_log_group/", "metadata_create_log_group/"), module=self.MODULE, description=_("创建自定义日志组"), before_request=add_esb_info_before_request, ) self.modify_log_group = DataAPI( method="POST", - url=self._build_url("app/metadata/modify_log_group/", "metadata_modify_log_group/"), + url=self._build_url("modify_log_group/", "metadata_modify_log_group/"), module=self.MODULE, description=_("修改自定义日志组"), before_request=add_esb_info_before_request, ) self.get_log_group = DataAPI( method="GET", - url=self._build_url("app/metadata/get_log_group/", "metadata_get_log_group/"), + url=self._build_url("get_log_group/", "metadata_get_log_group/"), module=self.MODULE, description=_("获取自定义日志组"), before_request=add_esb_info_before_request, ) self.create_or_update_es_router = DataAPI( method="POST", - url=self._build_url("app/metadata/create_or_update_es_router/", "metadata_create_or_update_es_router/"), + url=self._build_url("create_or_update_es_router/", "metadata_create_or_update_es_router/"), module=self.MODULE, description=_("创建或更新es路由"), before_request=add_esb_info_before_request, ) self.list_kafka_tail = DataAPI( method="GET", - url=self._build_url("app/metadata/kafka_tail/", "metadata_kafka_tail/"), + url=self._build_url("kafka_tail/", "metadata_kafka_tail/"), module=self.MODULE, description=_("查询结果表MQ的最新数据"), before_request=add_esb_info_before_request, ) + @property + def use_apigw(self): + return settings.USE_NEW_MONITOR_APIGATEWAY + def _build_url(self, new_path, old_path): - return f"{MONITOR_APIGATEWAY_ROOT_NEW}{new_path}" if use_gw() else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" + return ( + f"{MONITOR_APIGATEWAY_ROOT_NEW}app/metadata/{new_path}" + if self.use_apigw + else f"{MONITOR_APIGATEWAY_ROOT}{old_path}" + ) Transfer = _TransferApi() diff --git a/bklog/apps/log_clustering/handlers/pattern.py b/bklog/apps/log_clustering/handlers/pattern.py index d1eef37750..9dbf6554a2 100644 --- a/bklog/apps/log_clustering/handlers/pattern.py +++ b/bklog/apps/log_clustering/handlers/pattern.py @@ -24,6 +24,7 @@ from typing import List import arrow +from django.conf import settings from django.db.models import Q from django.db.transaction import atomic from django.utils.functional import cached_property @@ -54,7 +55,6 @@ ) from apps.log_search.handlers.search.aggs_handlers import AggsHandlers from apps.models import model_to_dict -from apps.utils.apigw import use_gw from apps.utils.bkdata import BkData from apps.utils.db import array_hash from apps.utils.function import map_if @@ -442,7 +442,7 @@ def set_clustering_owner(self, params: dict): if not remark_obj.strategy_id or not remark_obj.strategy_enabled: return model_to_dict(remark_obj) # 更新告警组 - if use_gw(): + if settings.USE_NEW_MONITOR_APIGATEWAY: user_group = MonitorApi.search_user_groups( {"bk_biz_ids": [self._clustering_config.bk_biz_id], "ids": [remark_obj.notice_group_id]} )[0] diff --git a/bklog/apps/log_clustering/utils/monitor.py b/bklog/apps/log_clustering/utils/monitor.py index ee3fb86870..cabf3f142d 100644 --- a/bklog/apps/log_clustering/utils/monitor.py +++ b/bklog/apps/log_clustering/utils/monitor.py @@ -19,6 +19,7 @@ We undertake not to change the open source license (MIT license) applicable to the current version of the project delivered to anyone in the future. """ +from django.conf import settings from django.utils.translation import gettext_lazy as _ # noqa from apps.api import MonitorApi @@ -32,13 +33,12 @@ from apps.log_clustering.models import ClusteringConfig, NoticeGroup from apps.log_databus.constants import EMPTY_REQUEST_USER from apps.log_search.models import LogIndexSet -from apps.utils.apigw import use_gw class MonitorUtils(object): @classmethod def save_notice_group(cls, bk_biz_id: int, name: str, notice_way: dict, notice_receiver: list, message: str = ""): - if use_gw(): + if settings.USE_NEW_MONITOR_APIGATEWAY: params = { "bk_biz_id": bk_biz_id, "name": name, diff --git a/bklog/apps/utils/apigw.py b/bklog/apps/utils/apigw.py deleted file mode 100644 index 863c315d03..0000000000 --- a/bklog/apps/utils/apigw.py +++ /dev/null @@ -1,29 +0,0 @@ -# -*- coding: utf-8 -*- -""" -Tencent is pleased to support the open source community by making BK-LOG 蓝鲸日志平台 available. -Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved. -BK-LOG 蓝鲸日志平台 is licensed under the MIT License. -License for BK-LOG 蓝鲸日志平台: --------------------------------------------------------------------- -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the Software without restriction, including without limitation -the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, -and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial -portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT -LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -We undertake not to change the open source license (MIT license) applicable to the current version of -the project delivered to anyone in the future. -""" -from django.conf import settings - - -def use_gw(): - """ - 是否使用新监控网关 - """ - return settings.USE_NEW_MONITOR_APIGATEWAY