django按照日期或者大小来分割 没有生效

setting配置文件如下:

LOGGING = {

'version': 1,
'disable_existing_loggers': False,
'formatters': {
    'standard': {
        'format': '%(asctime)s %(levelname)s  %(message)s'
    },
},
'filters': {
},
'handlers': {

    'file_handler': {
        'level': 'DEBUG',
        'class': 'logging.handlers.RotatingFileHandler',
        # 'filename':'test.log',
        'filename': datetime.datetime.now().strftime("%Y-%m-%d") + '.log',
        'formatter': 'standard',
        'maxBytes': 10,
    },

    'console':
        {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'standard',
        }
},

'loggers': {

    'django.request': {
        'handlers': ['file_handler'],
        'level': 'DEBUG',
        'propagate': True,
    },

    'django': {
        'handlers': ['file_handler'],
        'level': 'DEBUG',
        'propagate': True
    },

    'info_logger': {
        'handlers': ['file_handler'],
        'level': 'DEBUG',
        'propagate': True
    },
}

}

运行了一天,文件操作100M,然后文件名也没有按照格式改成最新一天的。
django 2.0.1

请问哪里出问题了?

阅读 2.4k
1 个回答

可以试下用 when 来指定间隔时间,timedrotatingfilehandler,类似:

'handlers': {
    'default': {
        'level': 'INFO',
        'class': 'logging.handlers.TimedRotatingFileHandler',
        'filename': os.path.join(ROOT_DIR, 'django.log'),
        'formatter': 'verbose',
        'when': 'midnight',
        'backupCount': '30',
    },
},
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题