Skip to content

Commit 5e332de

Browse files
authored
Merge pull request #1341 from Bidaya0/fix/change-logging-level
fix: change logging level to reduce log cost.
2 parents ecaf727 + 99f3ed8 commit 5e332de

File tree

8 files changed

+31
-24
lines changed

8 files changed

+31
-24
lines changed

dongtai_common/endpoint/__init__.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
from dongtai_common.models.department import Department
3333
from functools import reduce
3434
from operator import ior
35+
from rest_framework.exceptions import AuthenticationFailed
3536

3637
if TYPE_CHECKING:
3738
from django.core.paginator import _SupportsPagination
@@ -107,9 +108,13 @@ def dispatch(self, request, *args, **kwargs):
107108
else:
108109
handler = self.http_method_not_allowed
109110
response = handler(request, *args, **kwargs)
111+
except AuthenticationFailed as exc:
112+
logger.debug(f'url: {self.request.path},exc:{exc}')
113+
response = self.handle_exception(exc)
110114
except Exception as exc:
111-
logger.error(f'url: {self.request.path},exc:{exc}', exc_info=True)
115+
logger.warning(f'url: {self.request.path},exc:{exc}', exc_info=exc)
112116
response = self.handle_exception(exc)
117+
finally:
113118
return self.finalize_response(request, response, *args, **kwargs)
114119

115120
self.response = self.finalize_response(request, response, *args,
@@ -198,7 +203,7 @@ def get_paginator(
198203
except EmptyPage:
199204
return page_summary, queryset.none()
200205
except BaseException as e:
201-
logger.error(e, exc_info=e)
206+
logger.info(e, exc_info=e)
202207
return page_summary, queryset.none()
203208
return page_summary, page_list
204209

dongtai_common/utils/http.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,5 @@ def build_response(header, body):
2020
_data = base64.b64decode(header.encode("utf-8")).decode("utf-8")
2121
except Exception as e:
2222
_data = ''
23-
logger.error(f'Response Header解析出错,错误原因:{e}')
23+
logger.warning(f'Response Header解析出错,错误原因:{e}', exc_info=e)
2424
return '{header}\n\n{body}'.format(header=_data, body=body)

dongtai_engine/plugins/strategy_headers.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,10 @@ def check_response_header(method_pool):
9898
method_pool,
9999
position='HTTP Response Header')
100100
except Exception as e:
101-
logger.error("check_response_header failed, reason: " + str(e),
102-
exc_info=e)
101+
logger.warning(
102+
"check_response_header failed, reason: " + str(e),
103+
exc_info=e,
104+
)
103105

104106

105107
def save_vul(vul_type, method_pool, position=None, data=None):
@@ -110,7 +112,7 @@ def save_vul(vul_type, method_pool, position=None, data=None):
110112
state=const.STRATEGY_ENABLE,
111113
user_id__in=(1, method_pool.agent.user.id)).first()
112114
if vul_strategy is None:
113-
logger.error(
115+
logger.warning(
114116
f'There is no corresponding strategy for the current vulnerability: {vul_type}'
115117
)
116118

dongtai_engine/plugins/strategy_sensitive.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,9 @@ def check_response_content(method_pool):
4949
position=key,
5050
data=result.group(0))
5151
except Exception as e:
52-
logger.error(
52+
logger.warning(
5353
f'check_response_content error, rule: {rule.id}, rule name: {rule.strategy.vul_type}, reason: {e}',
54-
exc_info=True)
54+
exc_info=e)
5555
elif json_response and rule.pattern_type.id == 2:
5656
pattern = jq.compile(rule.pattern)
5757
result = pattern.input(json_response).all()
@@ -61,9 +61,9 @@ def check_response_content(method_pool):
6161
position='HTTP Response Body',
6262
data=' '.join(result))
6363
except Exception as e:
64-
logger.error(
64+
logger.warning(
6565
f'check_response_content error, rule: {rule.id}, rule name: {rule.strategy.vul_type}, reason: {e}',
66-
exc_info=True)
66+
exc_info=e)
6767

6868
search_id_card_leak(method_pool)
6969

@@ -89,8 +89,9 @@ def search_id_card_leak(method_pool):
8989
# todo: add highlight to id_card
9090
save_vul(vul_type='ID Number Leak', method_pool=method_pool, position=key, data=card)
9191
except Exception as e:
92-
logger.error(
93-
f'check_response_content error, rule name: ID Number Leak, Method Pool ID: {method_pool.id}, reason: {e}')
92+
logger.warning(
93+
f'check_response_content error, rule name: ID Number Leak, Method Pool ID: {method_pool.id}, reason: {e}',
94+
exc_info=e)
9495

9596

9697
def check_id_card(id_card):

dongtai_engine/tasks.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ def search_and_save_vul(engine: Optional[VulEngine],
135135
)
136136
return
137137
if not queryset.values('id').exists():
138-
logger.error(
138+
logger.warning(
139139
f'current method pool hit rule {strategy.get("type")}, but no vul strategy.'
140140
)
141141
return
@@ -240,7 +240,7 @@ def search_vul_from_method_pool(self, method_pool_sign, agent_id, retryable=Fals
240240
tries = self.request.retries + 1
241241
raise RetryableException(f'漏洞检测方法池 {method_pool_sign} 不存在,重试第 {tries} 次')
242242
else:
243-
logger.error(f'漏洞检测超过最大重试次数 {self.max_retries},方法池 {method_pool_sign} 不存在')
243+
logger.warning(f'漏洞检测超过最大重试次数 {self.max_retries},方法池 {method_pool_sign} 不存在')
244244
else:
245245
logger.warning(f'漏洞检测终止,方法池 {method_pool_sign} 不存在')
246246
return
@@ -270,10 +270,9 @@ def search_vul_from_method_pool(self, method_pool_sign, agent_id, retryable=Fals
270270
delay = 5 + pow(3, self.request.retries) * 10
271271
self.retry(exc=e, countdown=delay)
272272
else:
273-
logger.error(f'漏洞检测超过最大重试次数,错误原因:{e}')
273+
logger.info(f'漏洞检测超过最大重试次数,错误原因:{e}')
274274
except Exception as e:
275-
logger.error(e, exc_info=True)
276-
logger.error(f'漏洞检测出错,方法池 {method_pool_sign}. 错误原因:{e}')
275+
logger.error(f'漏洞检测出错,方法池 {method_pool_sign}. 错误原因:{e}', exc_info=e)
277276

278277

279278
@shared_task(queue='dongtai-replay-vul-scan')
@@ -559,7 +558,7 @@ def vul_recheck():
559558
try:
560559
params = json.loads(vulnerability['param_name'])
561560
except JSONDecodeError as e:
562-
logger.error(f'污点数据解析出错,原因:{e}')
561+
logger.warning(f'污点数据解析出错,原因:{e}', exc_info=e)
563562
Replay.replay_failed(replay=replay, timestamp=timestamp)
564563
con = 1
565564
else:
@@ -619,7 +618,7 @@ def vul_recheck():
619618
try:
620619
headers = base64.b64encode('\n'.join(header_raw))
621620
except Exception as e:
622-
logger.error(f'请求头解析失败,漏洞ID: {vulnerability["id"]}')
621+
logger.warning(f'请求头解析失败,漏洞ID: {vulnerability["id"]}', exc_info=e)
623622
elif position == 'COOKIE':
624623
import base64
625624
header_raw = base64.b64decode(headers).decode('utf-8').split('\n')

dongtai_protocol/report/handler/saas_method_pool_handler.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,13 +191,13 @@ def save(self):
191191
logger.info(
192192
f"record method failed : {self.agent_id} {self.http_uri} {self.http_method}"
193193
)
194-
logger.warning(e, exc_info=True)
194+
logger.warning(e, exc_info=e)
195195
try:
196196
logger.info(f"send normal method pool {self.agent_id} {self.http_uri} {pool_sign} to celery ")
197197
self.send_to_engine(method_pool_sign=pool_sign,
198198
update_record=update_record)
199199
except Exception as e:
200-
logger.warning(e, exc_info=True)
200+
logger.warning(e, exc_info=e)
201201

202202
def to_json(self, pool_sign: str):
203203
timestamp = int(time.time())
@@ -369,7 +369,7 @@ def send_to_engine(self, method_pool_id="", method_pool_sign="", update_record=F
369369
)
370370
# requests.get(url=settings.REPLAY_ENGINE_URL.format(id=method_pool_id))
371371
except Exception as e:
372-
logger.warning(f'[-] Failure: send method_pool [{method_pool_id}{method_pool_sign}], Error: {e}')
372+
logger.error(f'[-] Failure: send method_pool [{method_pool_id}{method_pool_sign}], Error: {e}', exc_info=e)
373373

374374
def calc_hash(self):
375375
sign_raw = '-'.join(

dongtai_protocol/report/report_handler_factory.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ def handler(reports, user):
7575
result = class_of_handler().handle(reports, user)
7676
return result
7777
except Exception as e:
78-
logger.error(e, exc_info=True)
78+
logger.error(e, exc_info=e)
7979
return None
8080

8181
@classmethod

dongtai_protocol/views/report_upload.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,5 +36,5 @@ def post(self, request):
3636
data = ReportHandler.handler(report, request.user)
3737
return R.success(msg="report upload success.", data=data)
3838
except Exception as e:
39-
logger.error(f"report upload failed, reason: {e}", exc_info=True)
39+
logger.error(f"report upload failed, reason: {e}", exc_info=e)
4040
return R.failure(msg="report upload failed")

0 commit comments

Comments
 (0)