Django 日志记录间歇性工作
Django Logging Works Intermittently
我真的很想使用日志记录来确保我的应用程序正常工作,但我无法让它可靠地工作。
我只是在从日志文件中删除所有现有行后才注意到这个问题,我不确定它是否在其他时间发生过,但有时请求的信息会成功添加到我的日志文件中,而其他时候什么也没有,文件仍然是空白的。
我已经这样设置了,logger = logging.getLogger(__name__)
并且正在使用 logger.info("Log This!")
这是手动删除日志文件造成的吗?或者我的配置有问题?
LOGGING = {'version': 1,
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format' : "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
'datefmt' : "%d/%b/%Y %H:%M:%S"
},
'simple': {
'format': '%(levelname)s %(message)s'
},
},
'handlers': {
'file': {
'level': 'INFO',
'class': 'logging.FileHandler',
'filename': os.path.join(BASE_DIR, 'logs/GeniusLogs.log'),
'formatter': 'verbose'
},
},
'loggers': {
'': {
'handlers': ['file'],
'level': 'INFO',
'propagate': True
},
'django': {
'handlers':['file'],
'propagate': True,
'level': os.getenv('DJANGO_LOG_LEVEL', 'INFO'),
},
}
}
编辑
玩过后,似乎手动编辑日志文件是导致问题的原因。编辑文件后,我必须对日志记录设置进行某种 material 更改才能使其再次运行。 (通常注释掉 Django 应用程序并加载页面将使其正常工作)。
最好从命令行清除日志:
with open('AlmondKing/logs/GeniusLogs.log', 'w'):
pass
我真的很想使用日志记录来确保我的应用程序正常工作,但我无法让它可靠地工作。
我只是在从日志文件中删除所有现有行后才注意到这个问题,我不确定它是否在其他时间发生过,但有时请求的信息会成功添加到我的日志文件中,而其他时候什么也没有,文件仍然是空白的。
我已经这样设置了,logger = logging.getLogger(__name__)
并且正在使用 logger.info("Log This!")
这是手动删除日志文件造成的吗?或者我的配置有问题?
LOGGING = {'version': 1,
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format' : "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
'datefmt' : "%d/%b/%Y %H:%M:%S"
},
'simple': {
'format': '%(levelname)s %(message)s'
},
},
'handlers': {
'file': {
'level': 'INFO',
'class': 'logging.FileHandler',
'filename': os.path.join(BASE_DIR, 'logs/GeniusLogs.log'),
'formatter': 'verbose'
},
},
'loggers': {
'': {
'handlers': ['file'],
'level': 'INFO',
'propagate': True
},
'django': {
'handlers':['file'],
'propagate': True,
'level': os.getenv('DJANGO_LOG_LEVEL', 'INFO'),
},
}
}
编辑
玩过后,似乎手动编辑日志文件是导致问题的原因。编辑文件后,我必须对日志记录设置进行某种 material 更改才能使其再次运行。 (通常注释掉 Django 应用程序并加载页面将使其正常工作)。
最好从命令行清除日志:
with open('AlmondKing/logs/GeniusLogs.log', 'w'):
pass