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正则表达式re模块详细介绍
May 29 Python
python获取本机mac地址和ip地址的方法
Apr 29 Python
简单介绍Python2.x版本中的cmp()方法的使用
May 20 Python
Python实现重建二叉树的三种方法详解
Jun 23 Python
Python3 导入上级目录中的模块实例
Feb 16 Python
Python2与Python3的区别实例总结
Apr 17 Python
Python中*args和**kwargs的区别详解
Sep 17 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
Nov 08 Python
Python大数据之使用lxml库解析html网页文件示例
Nov 16 Python
python字符串判断密码强弱
Mar 18 Python
编写python代码实现简单抽奖器
Oct 20 Python
python opencv将多个图放在一个窗口的实例详解
Feb 28 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
动漫女神老婆无限好,但日本女生可能就不是这么一回事了!
2020/03/04 日漫
简单谈谈PHP中的trait
2017/02/25 PHP
laravel利用中间件防止未登录用户直接访问后台的方法
2019/09/30 PHP
javascript 表单的友好用户体现
2009/01/07 Javascript
基于jquery封装的一个js分页
2011/11/15 Javascript
编写针对IE的JS代码两种编写方法
2013/01/30 Javascript
jquery触发a标签跳转事件示例代码
2013/07/21 Javascript
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
wap图片滚动特效无css3元素纯js脚本编写
2014/08/22 Javascript
node.js中的fs.linkSync方法使用说明
2014/12/15 Javascript
Jquery实现$.fn.extend和$.extend函数
2016/04/14 Javascript
Bootstrap提示框效果的实例代码
2017/07/12 Javascript
jQuery实现弹窗下底部页面禁止滑动效果
2017/12/19 jQuery
微信小程序页面缩放式侧滑效果的实现代码
2018/11/15 Javascript
vue 中使用 watch 出现了如下的报错的原因分析
2019/05/21 Javascript
一篇不错的Python入门教程
2007/02/08 Python
在Python下使用Txt2Html实现网页过滤代理的教程
2015/04/11 Python
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
Python的MongoDB模块PyMongo操作方法集锦
2016/01/05 Python
Python中字符串的处理技巧分享
2016/09/17 Python
Python针对给定列表中元素进行翻转操作的方法分析
2018/04/27 Python
Python微医挂号网医生数据抓取
2019/01/24 Python
python3编写ThinkPHP命令执行Getshell的方法
2019/02/26 Python
对python 调用类属性的方法详解
2019/07/02 Python
python使用opencv在Windows下调用摄像头实现解析
2019/11/26 Python
python中怎么表示空值
2020/06/19 Python
使用Python操作MySQL的小技巧
2020/09/10 Python
详解Html5微信支付爬坑之路
2018/07/24 HTML / CSS
院药学专业个人求职信
2013/09/21 职场文书
宠物店的创业计划书范文
2014/01/11 职场文书
财务信息服务专业自荐书范文
2014/02/08 职场文书
预备党员入党自我评价范文
2014/03/10 职场文书
办公室主任竞聘演讲稿
2014/05/15 职场文书
第一军规观后感
2015/06/12 职场文书
2016年暑假学生家长评语
2015/12/01 职场文书
JavaScript 反射学习技巧
2021/10/16 Javascript