Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gunicorn Django和将信息记录到文件中_Django_Logging_Gunicorn - Fatal编程技术网

Gunicorn Django和将信息记录到文件中

Gunicorn Django和将信息记录到文件中,django,logging,gunicorn,Django,Logging,Gunicorn,我正在尝试设置日志设置,以便通过stdout将logging.info('anymessage')发送到文件 这是我的gunicorn\u django脚本: $gunicorn\u django-w$NUM\u WORKERS--user=$user--group=$group--log level=info--log file=$LOGFILE&>$LOGFILE 以下是我的日志设置: import sys LOGGING = { 'version': 1, 'disab

我正在尝试设置日志设置,以便通过stdout
logging.info('anymessage')
发送到文件

这是我的
gunicorn\u django
脚本:


$gunicorn\u django-w$NUM\u WORKERS--user=$user--group=$group--log level=info--log file=$LOGFILE&>$LOGFILE

以下是我的日志设置:

import sys
LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'simple': {
            'format': '%(levelname)s %(message)s'
        },
    },
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
        }
    },
    'handlers': {
        'console': {
            'level': 'INFO',
            'filters': ['require_debug_false'],
            'class': 'logging.StreamHandler',
            'stream': sys.stdout,
            'formatter': 'simple',
        },
        'mail_admins': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'django.utils.log.AdminEmailHandler'
        }
    },
    'loggers': {
        'app.location': {
            'handlers': ['console'],
            'level': 'INFO',
            'propagate': False,
        },
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
    }
}
当我这样做时:

import logging
logging.getLogger('app.location')
logging.info('any message')
它不会记录到
gunicorn\u django
$LOGFILE。只是,
print>>sys.stderr
消息似乎显示在$LOGFILE中


如何将信息消息(通过stdout)记录到一个文件中

您的日志记录程序在您创建它时就被垃圾收集。您需要将其作为记录器保留一个引用,然后使用该记录器,如下所示:

import logging


logger = logging.getLogger('app.location')
logger.info('any message')