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编写一个国际象棋AI程序
Nov 28 Python
python调用机器喇叭发出蜂鸣声(Beep)的方法
Mar 23 Python
Python 多核并行计算的示例代码
Nov 07 Python
python通过opencv实现批量剪切图片
Nov 13 Python
python打包压缩、读取指定目录下的指定类型文件
Apr 12 Python
利用Python yagmail三行代码实现发送邮件
May 11 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
Oct 21 Python
python使用matplotlib画柱状图、散点图
Mar 18 Python
Dlib+OpenCV深度学习人脸识别的方法示例
May 14 Python
在Python中COM口的调用方法
Jul 03 Python
pytorch查看通道数 维数 尺寸大小方式
May 26 Python
使用OpenCV去除面积较小的连通域
Jul 05 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合并js请求的例子
2013/11/01 PHP
PHP实现单例模式最安全的做法
2014/06/13 PHP
php定义参数数量可变的函数用法实例
2015/03/16 PHP
使用Post提交时须将空格转换成加号的解释
2013/01/14 Javascript
图片轮换效果实现代码(点击按钮停止执行)
2013/04/12 Javascript
javaScript(JS)替换节点实现思路介绍
2013/04/17 Javascript
JavaScript根据数据生成百分比图和柱状图的实例代码
2013/07/14 Javascript
setInterval与clearInterval的使用示例代码
2014/01/28 Javascript
js获取窗口相对于屏幕左边和上边的位置坐标
2014/05/15 Javascript
node.js操作mongodb学习小结
2015/04/25 Javascript
jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法
2016/11/23 Javascript
Bootstrap复选框和单选按钮美化插件(推荐)
2016/11/23 Javascript
JavaScript实现精美个性导航栏筋斗云效果
2017/10/29 Javascript
vue 解决循环引用组件报错的问题
2018/09/06 Javascript
vue侧边栏动态生成下级菜单的方法
2018/09/07 Javascript
js监听html页面的上下滚动事件方法
2018/09/11 Javascript
浅谈vue中关于checkbox数据绑定v-model指令的个人理解
2018/11/14 Javascript
利用d3.js力导布局绘制资源拓扑图实例教程
2019/01/08 Javascript
JS通过识别id、value值对checkbox设置选中状态
2020/02/19 Javascript
python利用正则表达式搜索单词示例代码
2017/09/24 Python
python实现简单中文词频统计示例
2017/11/08 Python
python 杀死自身进程的实现方法
2019/07/01 Python
Python要如何实现列表排序的几种方法
2020/02/21 Python
Python线程threading模块用法详解
2020/02/26 Python
Python如何实现自带HTTP文件传输服务
2020/07/08 Python
大专生自我鉴定范文
2013/10/01 职场文书
房地产出纳岗位职责
2013/12/01 职场文书
仓库理货员岗位职责
2013/12/18 职场文书
数控机械专业个人的自我评价
2014/01/02 职场文书
学生会竞选演讲稿
2014/04/24 职场文书
十佳好少年事迹材料
2014/08/21 职场文书
交通事故委托书范本精选
2014/10/04 职场文书
2014年优秀党员材料
2014/12/18 职场文书
2016年学校党支部创先争优活动总结
2016/04/05 职场文书
基于nginx实现上游服务器动态自动上下线无需reload的实现方法
2021/03/31 Servers
一篇文章带你复习java知识点
2021/06/28 Java/Android