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})