万里长征第二步——django个人博客(第二步 ——日志记录器)
- 定义日志记录器
- 可以在setting.py里设置日志记录器
# 自定义日志输出信息
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'standard': {
'format': '%(asctime)s [%(threadName)s:%(thread)d] [%(name)s:%(lineno)d] [%(module)s:%(funcName)s] [%(levelname)s]- %(message)s'} #日志格式
},
'filters': {
},
'handlers': {
'mail_admins': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler',
'include_html': True,
},
'default': {
'level':'DEBUG',
'class':'logging.handlers.RotatingFileHandler',
'filename': 'log/all.log', #日志输出文件
'maxBytes': 1024*1024*5, #文件大小
'backupCount': 5, #备份份数
'formatter':'standard', #使用哪种formatters日志格式
},
'error': {
'level':'ERROR',
'class':'logging.handlers.RotatingFileHandler',
'filename': 'log/error.log',
'maxBytes':1024*1024*5,
'backupCount': 5,
'formatter':'standard',
},
'console':{
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'standard'
},
'request_handler': {
'level':'DEBUG',
'class':'logging.handlers.RotatingFileHandler',
'filename': 'log/script.log',
'maxBytes': 1024*1024*5,
'backupCount': 5,
'formatter':'standard',
},
'scprits_handler': {
'level':'DEBUG',
'class':'logging.handlers.RotatingFileHandler',
'filename':'log/script.log',
'maxBytes': 1024*1024*5,
'backupCount': 5,
'formatter':'standard',
}
},
'loggers': {
'django': {
'handlers': ['default', 'console'],
'level': 'DEBUG',
'propagate': False
},
'django.request': {
'handlers': ['request_handler'],
'level': 'DEBUG',
'propagate': False,
},
'scripts': {
'handlers': ['scprits_handler'],
'level': 'INFO',
'propagate': False
},
'blog.views': {
'handlers': ['default', 'error'],
'level': 'DEBUG',
'propagate': True
},
}
} - 在views.py里调用日志记录器
import logging #调用日志记录器
from django.shortcuts import render logging = logging.getLogger('blog.views') #调用日志器中的 'blog.views' 函数 # Create your views here.
def index(request):
try:
file = open('sss.txt','r') #打开一个不存在的文件
except Exception as e:
logging.error(e) #捕获错误,记录入日志中
return render(request, 'index.html', locals())
万里长征第二步——django个人博客(第二步 ——日志记录器)的更多相关文章
- 万里长征第二步——django个人博客(第三步 —— 设置一些全局变量)
可以将一些全局变量设置在settingg.py里 #网站的基本信息配置 SITE_NAME = 'John的个人博客' SITE_DESC = '专注学习Python开发,欢迎和大家交流' WEIBO ...
- 万里长征第二步——django个人博客(第一步 ——创建主页)
运行命令行工具,输入:pip install virtualenv --安装virtualenv库. virtualenv blog_project_venv ——使用virtualenv创建一个虚 ...
- 万里长征第二步——django个人博客(第七步 ——上传文件)
在项目目录下新建一个 ‘uploads’文件夹以保存上传的文件 配置setting.py文件 MEDIA_URL = '/uploads/' MEDIA_ROOT = os.path.join(BAS ...
- 万里长征第二步——django个人博客(第五步 ——配置后台admin)
在urls.py文件中配置admin路径 from django.conf.urls import url from django.contrib import admin from blog.vie ...
- 万里长征第二步——django个人博客(第四步 ——创建数据库)
在models.py内设置数据库模型 # -*- coding=utf-8 -*- from __future__ import unicode_literals from django.db imp ...
- 万里长征第二步——django个人博客(第六步 ——添加富文本编辑器)
下载kindeditor 在admin.py文件中配置链接 class Media: js = ( '/static/js/kindeditor-4.1.10/kindeditor-min.js', ...
- django 简易博客开发 3 静态文件、from 应用与自定义
首先还是贴一下源代码地址 https://github.com/goodspeedcheng/sblog 上一篇博客我们介绍了 django 如何在views中使用templates以及一些常用的数 ...
- Django搭建博客网站(四)
Django搭建博客网站(四) 最后一篇主要讲讲在后台文章编辑加入markdown,已经在文章详情页对markdown的解析. Django搭建博客网站(一) Django搭建博客网站(二) Djan ...
- Django搭建博客网站(三)
Django搭建博客网站(三) 第三篇主要记录view层的逻辑和template. Django搭建博客网站(一) Django搭建博客网站(二) 结构 网站结构决定我要实现什么view. 我主要要用 ...
随机推荐
- centos创建子用户
#adduser 用户名 #passwd 用户名 设置自己的密码即可 授权 个人用户的权限只可以在本home下有完整权限,其他目录要看别人授权.而经常需要root用户的权限,这时候sudo可以化身为r ...
- mysql 安装和配置
mysql 安装: 在命令行输入 sudo apt-get install mysql-server 安装过程中会跳出来一个窗口,输入数据库root用户的密码(必须输入密码) 安装完成后 通过 my ...
- jQuery为多个元素绑定同一个事件
$('.toals,input[type=datetime]').on('focus',function(){ $('.footer-focus-none').css('display','none' ...
- jmeter压力测试案例实战
1. 测试目标地址:http://www.cnblogs.com/ 2. 1秒内有100个用户同时访问,看性能如何 3. 步骤 线程组.http请求.查看结果树.聚合报告 添加http请求如下: ...
- pom报错解决方法大全
1.Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom 解决方法: Windows: CMD --> c ...
- [PAT] 1147 Heaps(30 分)
1147 Heaps(30 分) In computer science, a heap is a specialized tree-based data structure that satisfi ...
- Python基础系列----语法、数据类型、变量、编码
1.基本语法 Python ...
- CSS让文字在元素内绝对居中!!!【ie和谷歌】
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- PHP超全局变量数组
以下8个变量都是数组变量,又称为“预定义变量” 1.$_GET : 把数据通过地址栏传递到服务器,这是方式必须是$_GET方式传递: 2.$_POST : 通过表单发送的数据必须是POST方式: 3. ...
- 洛谷——P3908 异或之和
P3908 异或之和 题目描述 求1 \bigoplus 2 \bigoplus\cdots\bigoplus N1⨁2⨁⋯⨁N 的值. A \bigoplus BA⨁B 即AA , BB 按位异或. ...