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 相关文章推荐
python list语法学习(带例子)
Nov 01 Python
Python安装使用命令行交互模块pexpect的基础教程
May 12 Python
python中import reload __import__的区别详解
Oct 16 Python
PyQt5每天必学之滑块控件QSlider
Apr 20 Python
python实现泊松图像融合
Jul 26 Python
浅析python中的迭代与迭代对象
Oct 08 Python
解决PyCharm不运行脚本,而是运行单元测试的问题
Jan 17 Python
python使用Plotly绘图工具绘制柱状图
Apr 01 Python
Python3实现计算两个数组的交集算法示例
Apr 03 Python
python3 Scrapy爬虫框架ip代理配置的方法
Jan 17 Python
用Python提取PDF表格的方法
Apr 11 Python
python人工智能human learn绘图可创建机器学习模型
Nov 23 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
生成缩略图
2006/10/09 PHP
利用 window_onload 实现select默认选择
2006/10/09 PHP
解析PHP缓存函数的使用说明
2013/05/10 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
2019/03/18 PHP
基于jquery的复制网页内容到WORD的实现代码
2011/02/16 Javascript
autoIMG 基于jquery的图片自适应插件代码
2011/03/12 Javascript
jQuery的运行机制和设计理念分析
2011/04/05 Javascript
Js获取下拉框选定项的值和文本的实现代码
2014/02/26 Javascript
JS实现动态给图片添加边框的方法
2015/04/01 Javascript
简介AngularJS的HTML DOM支持情况
2015/06/17 Javascript
封装属于自己的JS组件
2016/01/27 Javascript
jQuery 获取遍历获取table中每一个tr中的第一个td的方法
2016/10/05 Javascript
vue实现简单实时汇率计算功能
2017/01/15 Javascript
jquery+css实现侧边导航栏效果
2017/06/12 jQuery
jsonp跨域请求详解
2017/07/13 Javascript
使用Bootrap和Vue实现仿百度搜索功能
2017/10/26 Javascript
nodejs实现的http、https 请求封装操作示例
2020/02/06 NodeJs
JavaScript设计模式--桥梁模式引入操作实例分析
2020/05/23 Javascript
[15:41]教你分分钟做大人——灰烬之灵
2015/03/11 DOTA
[57:55]完美世界DOTA2联赛PWL S3 Magma vs Phoenix 第二场 12.12
2020/12/16 DOTA
python发腾讯微博代码分享
2014/01/10 Python
python实现将html表格转换成CSV文件的方法
2015/06/28 Python
Python获取邮件地址的方法
2015/07/10 Python
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
2016/10/12 Python
PyQt5每天必学之单行文本框
2018/04/19 Python
利用pandas将numpy数组导出生成excel的实例
2018/06/14 Python
python使用scrapy发送post请求的坑
2018/09/04 Python
简单了解Python读取大文件代码实例
2019/12/18 Python
利用CSS3参考手册和CSS3代码生成工具加速来学习网页制
2012/07/11 HTML / CSS
CSS3实现可翻转的hover效果
2018/05/23 HTML / CSS
html5构建触屏网站之touch事件介绍
2013/01/07 HTML / CSS
法学毕业生自荐信
2013/11/13 职场文书
考察邀请函范文
2015/01/31 职场文书
银行求职信范文怎么写
2015/03/20 职场文书
企业年会祝酒词
2015/08/11 职场文书
详解Python中下划线的5种含义
2021/07/15 Python