python logging添加filter教程


Posted in Python onDecember 24, 2019

例子一

def filter(self, record):
    """Our custom record filtering logic.
    Built-in filtering logic (via logging.Filter) is too limiting.
    """
    if not self.filters:
      return True
    matched = False
    rname = record.name # shortcut
    for name in self.filters:
      if rname == name or rname.startswith(name+'.'):
        matched = True
    return matched

例子二

def _create_log_handlers(stream):
  """Create and return a default list of logging.Handler instances.
  Format WARNING messages and above to display the logging level, and
  messages strictly below WARNING not to display it.
  Args:
   stream: See the configure_logging() docstring.
  """
  # Handles logging.WARNING and above.
  error_handler = logging.StreamHandler(stream)
  error_handler.setLevel(logging.WARNING)
  formatter = logging.Formatter("%(levelname)s: %(message)s")
  error_handler.setFormatter(formatter)
 
  # Create a logging.Filter instance that only accepts messages
  # below WARNING (i.e. filters out anything WARNING or above).
  non_error_filter = logging.Filter()
  # The filter method accepts a logging.LogRecord instance.
  non_error_filter.filter = lambda record: record.levelno < logging.WARNING
 
  non_error_handler = logging.StreamHandler(stream)
  non_error_handler.addFilter(non_error_filter)
  formatter = logging.Formatter("%(message)s")
  non_error_handler.setFormatter(formatter)
 
  return [error_handler, non_error_handler]

例子三

def _default_handlers(stream):
  """Return a list of the default logging handlers to use.
  Args:
   stream: See the configure_logging() docstring.
  """
  # Create the filter.
  def should_log(record):
    """Return whether a logging.LogRecord should be logged."""
    # FIXME: Enable the logging of autoinstall messages once
    #    autoinstall is adjusted. Currently, autoinstall logs
    #    INFO messages when importing already-downloaded packages,
    #    which is too verbose.
    if record.name.startswith("webkitpy.thirdparty.autoinstall"):
      return False
    return True
 
  logging_filter = logging.Filter()
  logging_filter.filter = should_log
 
  # Create the handler.
  handler = logging.StreamHandler(stream)
  formatter = logging.Formatter("%(name)s: [%(levelname)s] %(message)s")
  handler.setFormatter(formatter)
  handler.addFilter(logging_filter)
 
  return [handler]

以上这篇python logging添加filter教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Django的视图中使用form对象的方法
Jul 18 Python
python使用matplotlib绘图时图例显示问题的解决
Apr 27 Python
python WindowsError的错误代码详解
Jul 23 Python
python将回车作为输入内容的实例
Jun 23 Python
Python实现基于KNN算法的笔迹识别功能详解
Jul 09 Python
python 2.7 检测一个网页是否能正常访问的方法
Dec 26 Python
Python django框架输入汉字,数字,字符生成二维码实现详解
Sep 24 Python
Flask框架 CSRF 保护实现方法详解
Oct 30 Python
python 监测内存和cpu的使用率实例
Nov 28 Python
Windows上安装tensorflow  详细教程(图文详解)
Feb 04 Python
python爬虫实现爬取同一个网站的多页数据的实例讲解
Jan 18 Python
python之基数排序的实现
Jul 26 Python
python打印异常信息的两种实现方式
Dec 24 #Python
numpy实现神经网络反向传播算法的步骤
Dec 24 #Python
python异常处理和日志处理方式
Dec 24 #Python
Python 音频生成器的实现示例
Dec 24 #Python
Python concurrent.futures模块使用实例
Dec 24 #Python
Python hmac模块使用实例解析
Dec 24 #Python
Python hashlib模块实例使用详解
Dec 24 #Python
You might like
php操作sqlserver关于时间日期读取的小小见解
2009/11/29 PHP
Smarty实现页面静态化(生成HTML)的方法
2016/05/23 PHP
Laravel如何友好的修改.env配置文件详解
2017/06/07 PHP
PHP中error_reporting函数用法详细介绍
2017/06/11 PHP
ThinkPHP实现登录退出功能
2017/06/29 PHP
PHP生成zip压缩包的常用方法示例
2019/08/22 PHP
javascript 兼容所有浏览器的DOM扩展功能
2012/08/01 Javascript
jQuery父级以及同级元素查找介绍
2013/09/04 Javascript
JavaScript实现继承的4种方法总结
2014/10/16 Javascript
Javascript前端UI框架Kit使用指南之kitjs事件管理
2014/11/28 Javascript
Javascript实现图片轮播效果(一)让图片跳动起来
2016/02/17 Javascript
纯js实现瀑布流布局及ajax动态新增数据
2016/04/07 Javascript
全面解析DOM操作和jQuery实现选项移动操作代码分享
2016/06/07 Javascript
JS使用单链表统计英语单词出现次数
2016/06/16 Javascript
基于javascript实现的快速排序
2016/12/02 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
Chrome调试折腾记之JS断点调试技巧
2017/09/11 Javascript
vue和webpack打包项目相对路径修改的方法
2018/06/15 Javascript
JS 音频可视化插件Wavesurfer.js的使用教程
2018/10/31 Javascript
基于PHP pthreads实现多线程代码实例
2020/06/24 Javascript
[15:41]教你分分钟做大人——灰烬之灵
2015/03/11 DOTA
[10:34]DOTA2上海特级锦标赛全纪录
2016/03/25 DOTA
Python写的创建文件夹自定义函数mkdir()
2014/08/25 Python
搞笑的程序猿:看看你是哪种Python程序员
2015/06/12 Python
给你选择Python语言实现机器学习算法的三大理由
2017/11/15 Python
Python 多线程搜索txt文件的内容,并写入搜到的内容(Lock)方法
2019/08/23 Python
如何在django中添加日志功能
2020/02/06 Python
解决python3输入的坑——input()
2020/12/05 Python
使用html5 canvas绘制圆环动效
2019/06/03 HTML / CSS
经典c++面试题二
2015/08/14 面试题
几个Linux面试题笔试题
2012/12/01 面试题
几个Shell Script面试题
2012/08/31 面试题
奠基仪式主持词
2014/03/20 职场文书
岗位工作说明书
2014/07/29 职场文书
向国旗敬礼学生寄语大全
2014/09/30 职场文书
python机器学习Github已达8.9Kstars模型解释器LIME
2021/11/23 Python