pythonn全栈学习笔记--logging模块学习(四)
一、logging相关配置
1 import logging
2 """
3 asctime:运行时间
4 name:主模块名称
5 levelname:日志级别 INFO、DEBUG
6 message:日志内容
7 """
8 # 日志配置
9 logging.basicConfig(level=logging.DEBUG, format='%(asctime)s-%(name)s - \
10 %(levelname)s-%(message)s')
11
12 # 声明了一个 Logger 对象,它就是日志输出的主类
13 # __name__:执行主模块的名称
14 logger= logging.getLogger(__name__)
15 # 日志信息内容输出
16 logger.info('信息')
17 # 日志信息调试输出
18 logger.debug("调试")
19 # 日志信息警告输出
20 logger.warning("警告")
21 logger.info("完成")
注:
1 # 另一种设置日志级别的方式,对实例化对象进行级别配置
2 logger.setLevel(level=logging.DEBUG)
- filename:即日志输出的文件名,如果指定了这个信息之后,实际上会启用 FileHandler(日志存入文件中),而不再是 StreamHandler(控制台输出),这样日志信息便会输出到文件中了。
- filemode:这个是指定日志文件的写入方式,有两种形式,w:清除后写入,一种是 a:追加写入。
- format:指定日志信息的输出格式
- datefmt:指定时间的输出格式。
- style:如果 format 参数指定了,这个参数就可以指定格式化时的占位符风格,如 %、{、$ 等。
- level:指定日志输出的类别,程序会输出大于等于此级别的信息。
- stream:在没有指定 filename 的时候会默认使用 StreamHandler,这时 stream 可以指定初始化的文件流。
- handlers:可以指定日志处理时所使用的 Handlers,必须是可迭代的。
扩展:
- level对应等级

- format属性详情
- 部分属性详情:

二、Handler用法:
1 import logging
2 from logging.handlers import HTTPHandler
3 import sys
4
5
6 # 实例化logging一个对象
7 logger = logging.getLogger(__name__)
8 # 配置日志级别为DEBUG
9 logger.setLevel(level=logging.DEBUG)
10 # 指定信息输出格式
11 formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
12
13 # streamHandler
14 # 指定日志文件并创建一个handler对象
15 stream_handler = logging.StreamHandler(sys.stdout)
16 stream_handler.setLevel(level=logging.DEBUG)
17 # 将输出格式和handler绑定
18 stream_handler.setFormatter(formatter)
19 # 将handler对象和logger(日志对象)绑定
20 logger.addHandler(stream_handler)
21
22 # FileHandler
23 file_handler = logging.FileHandler('out.log')
24 file_handler.setLevel(logging.INFO)
25 file_handler.setFormatter(formatter)
26 logger.addHandler(file_handler)
27
28 # HTTPHandler
29 http_handler = HTTPHandler(host='localhost:8001', url='log', method='POST')
30 logger.addHandler(http_handler)
31
32 # 日志输出信息
33 logger.info('Info')
34 logger.debug('Debug')
35 logger.warning('Warning')
36 logger.info('Finish')
三、Formatter
pythonn全栈学习笔记--logging模块学习(四)的更多相关文章
- Python 全栈开发六 常用模块学习
本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve configparser hashlib 一. ...
- Python全栈开发-Day5-常用模块学习
本节大纲: 模块介绍 time &datetime模块 random os sys shutil shelve xml处理 pyyaml处理 configparser hashlib re正则 ...
- python 学习笔记 -logging模块(日志)
模块级函数 logging.getLogger([name]):返回一个logger对象,如果没有指定名字将返回root loggerlogging.debug().logging.info().lo ...
- Python全栈之路----常用模块学习----模块的种类和导入方法
什么是模块? 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码 ...
- Python3学习笔记25-logging模块
logging模块,Python自带用来记录日志的模块. 因为工作需要用到关于日志的,最近一直都在看关于日志模块的东西,百度了很多文章,可惜都是看的让人一头雾水,最后运气不错,找到一篇很详细的文章.传 ...
- Python logging 模块学习
logging example Level When it's used Numeric value DEBUG Detailed information, typically of interest ...
- 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理
目录 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理 17.1 计划任务-at-cron-计划任务使用方法 17.1.1 at计划任务的使用 17.1.2 查看和删除at将要执行 ...
- HTML+CSS学习笔记 (6) - 开始学习CSS
HTML+CSS学习笔记 (6) - 开始学习CSS 认识CSS样式 CSS全称为"层叠样式表 (Cascading Style Sheets)",它主要是用于定义HTML内容在浏 ...
- 学习笔记:CentOS7学习之二十五:shell中色彩处理和awk使用技巧
目录 学习笔记:CentOS7学习之二十五:shell中色彩处理和awk使用技巧 25.1 Shell中的色彩处理 25.2 awk基本应用 25.2.1 概念 25.2.2实例演示 25.3 awk ...
- 学习笔记:CentOS7学习之二十:shell脚本的基础
目录 学习笔记:CentOS7学习之二十:shell脚本的基础 20.1 shell 基本语法 20.1.1 什么是shell? 20.1.2 编程语言分类 20.1.3 什么是shell脚本 20. ...
随机推荐
- springboot Elasticsearch 实体创建索引设置Date 类型字段失败
springboot Elasticsearch 实体创建索引设置Date 类型字段失败,需添加以下注解 @Field(type = FieldType.Date, format = DateForm ...
- KingbaseES V8R3集群维护案例之---pcp_node_refresh应用
案例说明: 在一次KingbaseES V8R3集群切换分析中,运维人员执行了pcp_node_refresh,导致集群发生了failover的切换.此文档对pcp_node_refresh工具做了应 ...
- 《__cplusplus修饰符的作用:C和CPP接口互相调用时候,编译没问题,链接提示未定义问题》
关于__cplusplus修饰符说明如下: __cplusplus是cpp中的自定义宏,那么定义了这个宏的话表示这是一段cpp的代码,也就是说,上面的代码的含义是:如果这是一段cpp的代码,那么加入e ...
- VS2019使用gtest
VS2019使用gtest GoogleTest测试框架介绍(一)_liitdar的博客-CSDN博客_goole test 术语 test/test case/test suit Meaning G ...
- MTK平台总结
1. 通过cmdline参数不对printk打印速率进行限制:mt_boot.c kcmdline_append(" ignore_loglevel=1 printk.devkmsg=on ...
- SDM
SDM:sigma delta Modulator SC:switch capacitor(开关电容) sigma delta调制器的分类 •单环路和级联(cascade)SDM:在于使用的量化器的数 ...
- Arseed 上传图片 快速入门
快速入门 为了方便开发者入门,我们部署了 web3infra.dev 方便开发者永存数据.快速入门将介绍如何使用 arseeding-js 将数据存通过 web3infra.dev 存储到 Arwea ...
- Qt 程序主界面添加背景图片
1.开发环境:Qt5.12.2,QtCreate4.8.2 2.贴图代码,在主程序中编写 #include <QImageReader> int main(int argc, char * ...
- Antlr语法优化过程记录
背景 Modelica Spec中的语法文件在Antlr下表现很糟糕,至少是1个数量级的糟糕的性能表现 理论 语义谓词减慢速度 ATN图中多分支转换为单分支 可选放在词法开头和语法的结尾 避免前导可选 ...
- Wix Setting language and code page attributes
When you localize your MSI package, you'll need to alter your Productand Package elements to suit. T ...