django - 日志操作

django中的日志操作:

1.settings.py文件下:

#创建日志路径  运行项目 会看到此时在项目下有个log目录
LOG_PATH = os.path.join(BASE_DIR, 'log')
# 如果地址不存在,则会自动创建log文件夹, 该文件夹在项目下
if not os.path.isdir(LOG_PATH):
    os.mkdir(LOG_PATH)

LOGGING={
# version只能为1
'version': 1,
# True表示禁用loggers
'disable_existing_loggers':False,
# 格式化 
'formatters':{
    # 定义日志显示的内容的格式
    'default':{ 
        'format': '%(levelno)s %(funcName)s %(module)s %(created)s %(message)s'
    },
    'simple': {
        'format': '%(levelno)s %(module)s %(created)s %(message)s'
    }
},

'handlers': {
    'stu_handlers': {
        'level': 'DEBUG',
        # 日志文件指定为5M, 超过5M重新备份, 然后写入新的日志文件
        'class': 'logging.handlers.RotatingFileHandler',
        # 1M = 1024kb 1kb = 1024b
        'maxBytes': 5 * 1024 * 1024,
        # 定义日志文件存放的地址
        'filename': '%s/log.txt' % LOG_PATH,
        # 定义日志内容 以上面定义的default的格式显示
        'formatter': 'default',
    },
    'uauth_handlers':{
        'level': 'DEBUG',
        'class': 'logging.handlers.RotatingFileHandler',
        'maxBytes': 5 * 1024 * 1024,
        'filename': '%s/uauth_log.txt' % LOG_PATH,
        'formatter': 'simple',
    }
},
# 处理传入进来的信息
'loggers': {
    'stu': {
        'handlers': ['stu_handlers'],
        'level': 'INFO'
    },
    'auth':['uauth_handlers'],
    'level': 'INFO'
    }
}

}
2. 在stu下 的views.py文件中:

import logging
# 上面settings.py文件中传入的就是stu(app)
logger = logging.getLogger('stu')

def index(request):

if request.method == 'GET':

    stuinfos = StudentInfo.objects.all()
    # 该方法中就加了这一句话, 日志文件中会显示该请求的访问路径和请求的方法
    logger.info('url: %s method:%s 获取学生信息成功' %(request.path, request.method))
    return render(requuest, 'index.html', {'stuinfos': stuinfos})

猜你喜欢

转载自blog.csdn.net/hello_syt_2018/article/details/80186732
今日推荐