Django 使用logging打印日志的实例


Posted in Python onApril 28, 2018

Django使用python自带的logging 作为日志打印工具。简单介绍下logging。

logging 是线程安全的,其主要由4部分组成:

Logger

用户使用的直接接口,将日志传递给Handler

Handler

控制日志输出到哪里,console,file…

一个logger可以有多个Handler

Filter

控制哪些日志可以从logger流向Handler

Formatter

控制日志的格式

用户使用logging.getLogger([name])获取logger实例。

如果没有名字,返回logger层级中的根logger(root logger)。以相同名字调用该函数总是返回同一个logger实例。这意味着logger实例不需要在应用的各个部分之间传来传去。

Django通过在settings文件中使用LOGGING来定制日志输出(包括定义logger, handler, formatter等)

例如,settings文件中定义如下:

LOGGING = {
 'version': 1,
 'disable_existing_loggers': False,
 'formatters': {
  'verbose': {
   'format': '[%(asctime)s] [%(levelname)s] %(message)s'
  },
 },
 'handlers': {
  'console':{
   'level':'INFO',
   'class':'logging.StreamHandler',
   'formatter': 'verbose'
  },
  'file': {
   'level': 'INFO',
   'class': 'logging.FileHandler',
   'filename': 'D:/monitor.log',
   'formatter': 'verbose'
  },
  'email': {
   'level': 'ERROR',
   'class': 'django.utils.log.AdminEmailHandler',
   'include_html' : True,
  }
 },
 'loggers': {
  'django': {
   'handlers': ['console', 'file', 'email'],
   'level': 'INFO',
   'propagate': True,
  },
 },
}

代码中打印日志:

logger = logging.getLogger(‘django')
logger.info(“This is an error msg”)

[2017-07-15 17:44:51,316] [ERROR] This is an error msg

这样,日志就被打印到终端和文件。

关于django logging 想了解更多,可参考官网

https://docs.djangoproject.com/en/1.11/topics/logging/

以上这篇Django 使用logging打印日志的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现备份文件实例
Sep 16 Python
python中黄金分割法实现方法
May 06 Python
Django的URLconf中使用缺省视图参数的方法
Jul 18 Python
python正则表达式之作业计算器
Mar 18 Python
详解Python迭代和迭代器
Mar 28 Python
Python实现字符串与数组相互转换功能示例
Sep 22 Python
python 按不同维度求和,最值,均值的实例
Jun 28 Python
Python增强赋值和共享引用注意事项小结
May 28 Python
PyCharm中代码字体大小调整方法
Jul 29 Python
Numpy之将矩阵拉成向量的实例
Nov 30 Python
解决python绘图使用subplots出现标题重叠的问题
Apr 30 Python
python中pymysql包操作数据库方法
Apr 19 Python
python实现log日志的示例代码
Apr 28 #Python
Python学习笔记之open()函数打开文件路径报错问题
Apr 28 #Python
Python之读取TXT文件的方法小结
Apr 27 #Python
如何利用python查找电脑文件
Apr 27 #Python
Python3 中把txt数据文件读入到矩阵中的方法
Apr 27 #Python
python Spyder界面无法打开的解决方法
Apr 27 #Python
解决Spyder中图片显示太小的问题
Apr 27 #Python
You might like
PHP 动态随机生成验证码类代码
2010/04/09 PHP
php字符串过滤与替换小结
2015/01/26 PHP
在Mac上编译安装PHP7的开发环境
2015/07/28 PHP
PHP针对字符串开头和结尾的判断方法
2016/07/11 PHP
php中Ioc(控制反转)和Di(依赖注入)
2017/05/07 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
JavaScript 序列化对象实现代码
2009/12/18 Javascript
动态加载script文件的两种方法
2013/08/15 Javascript
javascript对中文按照拼音排序代码
2014/08/20 Javascript
详解AngularJS中的依赖注入机制
2015/06/17 Javascript
jQuery实现可编辑的表格实例讲解(2)
2015/09/17 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
2015/11/03 Javascript
JavaScript检查子字符串是否在字符串中的方法
2016/02/03 Javascript
Jquery和JS获取ul中li标签的实现方法
2016/06/02 Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
2016/09/20 Javascript
js禁止表单重复提交
2017/08/29 Javascript
微信小程序实现自定义modal弹窗封装的方法
2018/06/15 Javascript
Vue自定义属性实例分析
2019/02/23 Javascript
js的继承方法小结(prototype、call、apply)(推荐)
2019/04/17 Javascript
vue axios重复点击取消上一次请求封装的方法
2019/06/19 Javascript
快速解决layui弹窗按enter键不停弹窗的问题
2019/09/18 Javascript
windows系统中python使用rar命令压缩多个文件夹示例
2014/05/06 Python
tensorflow建立一个简单的神经网络的方法
2018/02/10 Python
python对列进行平移变换的方法(shift)
2019/01/10 Python
Python学习笔记之错误和异常及访问错误消息详解
2019/08/08 Python
使用浏览器访问python写的服务器程序
2019/10/10 Python
python爬虫库scrapy简单使用实例详解
2020/02/10 Python
如何在vscode中安装python库的方法步骤
2021/01/06 Python
CSS3制作漂亮的照片墙的实现代码
2016/06/08 HTML / CSS
意大利咖啡、浓缩咖啡和浓缩咖啡机:illy caffe
2019/03/20 全球购物
美国珠宝精品店:Opulent Jewelers
2019/08/20 全球购物
体育专业求职信
2014/07/16 职场文书
一个都不能少观后感
2015/06/04 职场文书
导游词之北京明十三陵
2019/10/28 职场文书
分布式Redis Cluster集群搭建与Redis基本用法
2022/02/24 Redis
BCL经典机 SONY ICF-5900W电路分析
2022/04/24 无线电