Django Logging工作间歇性地进行

时间:2016-09-08 15:14:51

标签: django django-logging

我真的很想使用Logging来确保我的应用程序正常运行,但我无法让它可靠地运行。

在我从日志文件中删除所有现有行后,我才注意到这个问题,我不确定它是否在其他时间发生,但有时请求的信息已成功添加到我的日志文件,其他时间没有,文件保持空白。

我已将其设置为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'),
        },
    }
}

修改

使用它后,似乎手动编辑日志文件是导致问题的原因。编辑文件后,我必须在日志记录设置中进行某种重大更改才能使其再次运行。 (通常评论Django应用程序并加载页面将使其工作)。

1 个答案:

答案 0 :(得分:1)

最好从命令行清除日志:

with open('AlmondKing/logs/GeniusLogs.log', 'w'):
    pass