gpt4 book ai didi

python - Django 未记录到文件

转载 作者:行者123 更新时间:2023-12-01 08:45:39 25 4
gpt4 key购买 nike

我的日志配置如下:

LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'standard': {
'format': '%(asctime)s %(levelname)s %(name)s %(message)s'
},
},
'handlers': {
'default': {
'level': 'INFO',
'class': 'logging.handlers.RotatingFileHandler',
'filename': '/opt/logs/info.log',
'maxBytes': 1024*1024*5, # 5 MB
'backupCount': 5,
'formatter': 'standard',
},
'request_handler': {
'level': 'INFO',
'class': 'logging.handlers.RotatingFileHandler',
'filename': '/opt/logs/request.log',
'maxBytes': 1024*1024*5, # 5 MB
'backupCount': 5,
'formatter': 'standard',
},
},
'loggers': {

' ': {
'handlers': ['default'],
'level': 'INFO',
'propagate': True
},
'django.request': { # Stop SQL debug from logging to main logger
'handlers': ['request_handler'],
'level': 'INFO',
'propagate': False
},
}
}

在我看来,我尝试记录以下消息:

import logging

logger = logging.getLogger(__name__)

class IPGroupDeleteView(generics.DestroyAPIView):
queryset = IPGroup.objects.get_queryset()
serializer_class = IPGroupSerializer

def destroy(self, request, *args, **kwargs):
try:
instance = IPGroup.objects.get(id=kwargs['pk'])
except IPGroup.DoesNotExist:
logger.info("instance not found")
return Response(data={"errors": f"IP Group with id {kwargs['pk']} not found"},
status=status.HTTP_404_NOT_FOUND)

在我的 request.log 中,每次 404 发生时都会填充日志,如下所示:

2018-11-15 12:49:44,616 WARNING django.request Not Found: /api/v1/ip-group/190/delete/
2018-11-15 12:49:57,364 WARNING django.request Not Found: /api/v1/ip-group/190/delete/
2018-11-15 12:54:24,947 WARNING django.request Not Found: /api/v1/ip-group/190/delete/

但是,在 info.log 中,我希望看到我的自定义消息,却找不到任何内容。我做错了什么?

最佳答案

您配置的根记录器似乎包含字符串键的空格。尝试使用空字符串:

'': {  # Use an empty string
'handlers': ['default'],
'level': 'INFO',
'propagate': True
},

或者,您可以显式设置根记录器:

'root': {
'level': 'INFO',
'handlers': ['default'],
'propagate': True
}

它应该位于 LOGGING 字典的顶层(与 loggershandlers 等处于同一级别)。

关于python - Django 未记录到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53320090/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com