2016-10-23 147 views
0

我的日志记录在dev服务器上不工作,而是在本地工作。这里是配置:Django - 日志记录配置

LOGGING = { 
    'version': 1, 
    'disable_existing_loggers': False, 
    'formatters': { 
     'verbose': { 
      'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s' 
     }, 
     'simple': { 
      'format': '%(levelname)s %(asctime)s %(message)s' 
     }, 
    }, 
    'filters': { 
     'require_debug_false': { 
      '()': 'django.utils.log.RequireDebugFalse', 
     }, 
     'require_debug_true': { 
      '()': 'django.utils.log.RequireDebugTrue', 
     }, 
    }, 
    'handlers': { 
     'log_file':{ 
      'level': 'INFO', 
      'class': 'logging.handlers.RotatingFileHandler', 
      'filename': '/var/log/django/my_project.log', 
      'maxBytes': '16777216', # 16 MB 
      'formatter': 'simple' 
     }, 
     'console': { 
      'level': 'DEBUG', 
      'filters': ['require_debug_true'], 
      'class': 'logging.StreamHandler', 
      'formatter': 'simple' 
     }, 
     'null': { 
      'class': 'logging.NullHandler', 
     }, 
     'mail_admins': { 
      'level': 'ERROR', 
      'filters': ['require_debug_false'], 
      'class': 'django.utils.log.AdminEmailHandler' 
     } 
    }, 
    'loggers': { 
     'my_project': { 
      'handlers': ['log_file', 'console'], 
      'level': 'INFO', 
      'propagate': True, 
     }, 
     'django.request': { 
      'handlers': ['mail_admins'], 
      'level': 'ERROR', 
      'propagate': False, 
     }, 
    } 
} 

然后,如果我创建一个记录器实例:

logger = logging.getLogger('my_project') 

,我尝试登录了一句:

logger.info('something') 
logger.debug('something else') 

它不工作(没有写在/var/log/django/my_project.log),而在本地它的作品。 我错过了什么吗?

+0

服务器中是否存在'/ var/log/django /'? – guival

回答

0

也许写入权限丢失? 运行应用程序的用户是否允许在/ var中写入?