Skip to content

Commit

Permalink
feat: 检索切换unify-query search接口改造 #1010158081121754428
Browse files Browse the repository at this point in the history
  • Loading branch information
zzz833708 committed Feb 13, 2025
1 parent 15f3159 commit 7449114
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 19 deletions.
3 changes: 3 additions & 0 deletions bklog/apps/feature_toggle/plugins/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,6 @@

# 日志脱敏开关
LOG_DESENSITIZE = "log_desensitize"

# unify_query_search查询的开关
UNIFY_QUERY_SEARCH = "unify_query_search"
41 changes: 22 additions & 19 deletions bklog/apps/log_search/views/search_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
from apps.decorators import user_operation_record
from apps.exceptions import ValidationError
from apps.feature_toggle.handlers.toggle import FeatureToggleObject
from apps.feature_toggle.plugins.constants import LOG_DESENSITIZE
from apps.feature_toggle.plugins.constants import LOG_DESENSITIZE, UNIFY_QUERY_SEARCH
from apps.generic import APIViewSet
from apps.iam import ActionEnum, ResourceEnum
from apps.iam.handlers.drf import (
Expand Down Expand Up @@ -97,6 +97,7 @@
UpdateIndexSetFieldsConfigSerializer,
UserIndexSetCustomConfigSerializer,
)
from apps.log_unifyquery.handler import UnifyQueryHandler
from apps.utils.drf import detail_route, list_route
from apps.utils.local import get_request_external_username, get_request_username

Expand Down Expand Up @@ -323,14 +324,15 @@ def search(self, request, index_set_id=None):
search_handler = SearchHandlerEsquery(index_set_id, data)
if data.get("is_scroll_search"):
return Response(search_handler.scroll_search())
# return Response(search_handler.search())

from apps.log_unifyquery.handler import UnifyQueryHandler
data["index_set_ids"] = [index_set_id]
data["start_time"] = request.data.get("start_time")
data["end_time"] = request.data.get("end_time")
query_handler = UnifyQueryHandler(data)
return Response(query_handler.search())
if FeatureToggleObject.switch("UNIFY_QUERY_SEARCH", data.get("bk_biz_id")):
data["index_set_ids"] = [index_set_id]
data["start_time"] = request.data.get("start_time")
data["end_time"] = request.data.get("end_time")
query_handler = UnifyQueryHandler(data)
return Response(query_handler.search())
else:
return Response(search_handler.search())

@detail_route(methods=["POST"], url_path="search/original")
def original_search(self, request, index_set_id=None):
Expand Down Expand Up @@ -567,17 +569,18 @@ def export(self, request, index_set_id=None):
raise BaseSearchIndexSetException(BaseSearchIndexSetException.MESSAGE.format(index_set_id=index_set_id))

output = StringIO()
# export_fields = data.get("export_fields", [])
# search_handler = SearchHandlerEsquery(
# index_set_id, search_dict=data, export_fields=export_fields, export_log=True
# )
# result = search_handler.search(is_export=True)
from apps.log_unifyquery.handler import UnifyQueryHandler
data["index_set_ids"] = [index_set_id]
data["start_time"] = request.data.get("start_time")
data["end_time"] = request.data.get("end_time")
query_handler = UnifyQueryHandler(data)
result = query_handler.search(is_export=True)
if FeatureToggleObject.switch(UNIFY_QUERY_SEARCH, data.get("bk_biz_id")):
data["index_set_ids"] = [index_set_id]
data["start_time"] = request.data.get("start_time")
data["end_time"] = request.data.get("end_time")
query_handler = UnifyQueryHandler(data)
result = query_handler.search(is_export=True)
else:
export_fields = data.get("export_fields", [])
search_handler = SearchHandlerEsquery(
index_set_id, search_dict=data, export_fields=export_fields, export_log=True
)
result = search_handler.search(is_export=True)
result_list = result.get("origin_log_list")
for item in result_list:
output.write(f"{json.dumps(item, ensure_ascii=False)}\n")
Expand Down

0 comments on commit 7449114

Please sign in to comment.