django中日志logging的导出配置

在设置文件一般是settings.py配置logging

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这里配置了三个handler分别对应三个文件,三个loggers对应相对的handler

# 设置log文件地址
LOG_PATH = 'logs'
# 设置日志
LOGGING = {
    # 规定只能这样写
    'version': 1,
    # True表示禁用loggers
    'disable_existing_loggers': False,
    # 指定文件写入的格式——这里写了两个不同的格式,方便在后面不同情况需要的时候使用
    'formatters': {
        'default': {
            'format': '%(levelno)s %(funcName)s %(asctime)s %(message)s'
        },
        'simple': {
            'format': '%(levelname)s %(module)s %(asctime)s %(message)s'
        }
    },
    'handlers': {
        'code_handlers': {
            'level': 'DEBUG',
            # 日志文件指定为多大(5M), 超过大小(5M)重新命名,然后写新的日志文件
            'class': 'logging.handlers.RotatingFileHandler',
            'maxBytes': 5 * 1024 * 1024,
            # 储存到的文件地址
            'filename': '%s/log.txt' % LOG_PATH,
            'formatter': 'default'
        },
        'users_handlers': {
            'level': 'DEBUG',
            'class': 'logging.handlers.RotatingFileHandler',
            'maxBytes': 5 * 1024 * 1024,
            'filename': '%s/users_log.txt' % LOG_PATH,
            'formatter': 'default'
        },
        'uauth_handlers': {
            'level': 'DEBUG',
            'class': 'logging.handlers.RotatingFileHandler',
            'maxBytes': 5 * 1024 * 1024,
            'filename': '%s/uauth_log.txt' % LOG_PATH,
            'formatter': 'simple'
        }
    },
    'loggers': {
        'code': {
            'handlers': ['code_handlers'],
            'level': 'INFO'
        },
        'users': {
            'handlers': ['users_handlers'],
            'level': 'INFO'
        },
        'auth': {
            'handlers': ['uauth_handlers'],
            'level': 'INFO'
        }
    },
}

使用log写入文件

导入logging
如果在用到log的view.py中,想使用test1这个日志,就写:
log=logging.getLogger(‘test1’)
log.error()
在日志内容中传递变量,log.error(“Get html error, %s” % (e))

举例

import logging
# 参数填设置里面loggers字典的key值
log = logging.getLogger('users')

# 这是在对应的方法里截取出来的
# 校验手机号码格式,是否存在
   if not re.match('^1[3456789][\d]{9}$', phone):
       log.error('手机格式不对:' + ' ' + phone)

发布了49 篇原创文章 · 获赞 13 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_44166997/article/details/92705510