File tree Expand file tree Collapse file tree 2 files changed +14
-1
lines changed Expand file tree Collapse file tree 2 files changed +14
-1
lines changed Original file line number Diff line number Diff line change 2222
2323from django .conf import settings
2424from django .utils .deprecation import MiddlewareMixin
25+ from django_prometheus .middleware import PrometheusAfterMiddleware
2526
2627from common .log import logger
2728from common .utils .xss .escape_function import html_escape , texteditor_escape , url_escape
@@ -140,3 +141,14 @@ def __filter_path_list(self):
140141 }
141142 use_texteditor_paths = {}
142143 return (use_url_paths , use_texteditor_paths )
144+
145+
146+ class PrometheusAfterWithExclusionMiddleware (PrometheusAfterMiddleware , MiddlewareMixin ):
147+ """自定义指标中间件,排除特定路径的指标统计"""
148+
149+ def process_response (self , request , response ):
150+ """处理响应时跳过指定路径"""
151+ # 排除 /console/ping/ 和 /console/healthz/ 路径的 Metric 指标统计
152+ if request .path in ['/console/ping/' , '/console/healthz/' ]:
153+ return response
154+ return super ().process_response (request , response )
Original file line number Diff line number Diff line change @@ -127,7 +127,8 @@ def minimum_database_version(self):
127127 "bk_i18n.middlewares.LanguageMiddleware" ,
128128 "bk_i18n.middlewares.TimezoneMiddleware" ,
129129 "common.middlewares.CheckXssMiddleware" ,
130- "django_prometheus.middleware.PrometheusAfterMiddleware" ,
130+ # 继承 django_prometheus.middleware.PrometheusAfterMiddleware 中间件,并添加路径豁免功能
131+ "common.middlewares.PrometheusAfterWithExclusionMiddleware" ,
131132 'django.middleware.clickjacking.XFrameOptionsMiddleware' ,
132133]
133134
You can’t perform that action at this time.
0 commit comments