我尝试使Django Logging记录来自服务器的错误。现在我的代码:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': os.path.join(PROJECT_LOCAL_URL, 'mylog.log'),
},
},
'loggers': {
'django': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
},
}
当我检查mylog.log
时,它有太多的SQL查询字符串-SELECT FROM
,我不想看到。我该如何配置?
如何删除日志文件中的所有sql查询?
答案 0 :(得分:3)
数据库查询由django.db.backends
记录器记录。假设您仍然希望在其他任何地方进行DEBUG
级日志记录,那么您需要为该记录程序专门定义一个规则,以忽略DEBUG
日志记录:
'loggers': {
'django': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
'django.db.backends': {
'handlers': ['file'],
'level': 'WARNING', # DEBUG will log all queries, so change it to WARNING.
'propagate': False, # Don't propagate to other handlers
},
},