时间:2021-05-23
1. logging日志的介绍
在现实生活中,记录日志非常重要,比如:银行转账时会有转账记录;飞机飞行过程中,会有个黑盒子(飞行数据记录器)记录着飞机的飞行过程,那在咱们python程序中想要记录程序在运行时所产生的日志信息,怎么做呢?
可以使用 logging 这个包来完成
记录程序日志信息的目的是:
1. 可以很方便的了解程序的运行情况
2. 可以分析用户的操作行为、喜好等信息
3. 方便开发人员检查bug
2. logging日志级别介绍
日志等级可以分为5个,从低到高分别是:
1. DEBUG
2. INFO
3. WARNING
4. ERROR
5. CRITICAL
日志等级说明:
3. logging日志的使用
在 logging 包中记录日志的方式有两种:
1.输出到控制台
2.保存到日志文件
日志信息输出到控制台的示例代码:
运行结果:
WARNING:root:这是⼀个warning级别的⽇志信息
ERROR:root:这是⼀个error级别的⽇志信息
CRITICAL:root:这是⼀个critical级别的⽇志信息
说明:
日志信息只显示了大于等于WARNING级别的日志,这说明默认的日志级别设置为WARNING
logging日志等级和输出格式的设置:
运行结果:
2019-02-13 20:41:33,080 - hello.py[line:6] - DEBUG: 这是⼀个debug级别的⽇志信息
2019-02-13 20:41:33,080 - hello.py[line:7] - INFO: 这是⼀个info级别的⽇志信息
2019-02-13 20:41:33,080 - hello.py[line:8] - WARNING: 这是⼀个warning级别的⽇志信息
2019-02-13 20:41:33,080 - hello.py[line:9] - ERROR: 这是⼀个error级别的⽇志信息
2019-02-13 20:41:33,080 - hello.py[line:10] - CRITICAL: 这是⼀个critical级别的⽇志信息
代码说明:
level 表示设置的日志等级
format 表示日志的输出格式, 参数说明:
日志信息保存到日志文件的示例代码:
运行结果:
4. logging日志在mini-web项目中应用
web.py 程序使用logging日志示例:
1. 程序入口模块设置logging日志的设置
2. INFO级别的日志输出,示例代码:
# 判断是否是动态资源请求if request_path.endswith(".html"):"""这⾥是动态资源请求,把请求信息交给框架处理"""logging.info("动态资源请求:" + request_path)...else:"""这⾥是静态资源请求"""logging.info("静态资源请求:" + request_path)3. WARNING级别的日志输出,示例代码:
# 获取命令⾏参数判断⻓度if len(sys.argv) != 2:print("执⾏命令如下: python3 xxx.py 9000")logging.warning("⽤⼾在命令⾏启动程序参数个数不正确!")return# 判断端⼝号是否是数字if not sys.argv[1].isdigit():print("执⾏命令如下: python3 xxx.py 9000")logging.warning("⽤⼾在命令⾏启动程序参数不是数字字符串!")returnframework.py 程序使用logging日志示例:
1.ERROR级别的日志输出,示例代码:
说明:
logging日志配置信息在程序入口模块设置一次,整个程序都可以生效。
logging.basicConfig 表示 logging 日志配置操作
5. 小结
记录python程序中日志信息使用 logging 包来完成
logging日志等级有5个:
1. DEBUG
2. INFO
3. WARNING
4. ERROR
5. CRITICAL
打印(记录)日志的函数有5个:
1. logging.debug函数, 表示: 打印(记录)DEBUG级别的日志信息
2. logging.info函数, 表示: 打印(记录)INFO级别的日志信息
3. logging.warning函数, 表示: 打印(记录)WARNING级别的日志信息
4. logging.error函数, 表示: 打印(记录)ERROR级别的日志信息
5. logging.critical函数, 表示: 打印(记录)CRITICAL级别的日志信息
到此这篇关于Python中logging日志的四个等级和使用的文章就介绍到这了,更多相关Python logging日志内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
python的logging模块python提供了一个日志处理的模块,那就是logging。导入logging模块使用以下命令:importlogginglog
logging模块是Python的一个标准库模块,开发过程中,可以通过该模块,灵活的完成日志的记录。logging模块提供了两种记录日志的方式:1)使用logg
python自带了日志模块logging,可以用来记录程序运行过程中的日志信息。同时python还有logbook模块用来取代logging模块,在很多的项目中
详解使用python的logging模块在stdout输出前言: 使用python的logging模块时,除了想将日志记录在文件中外,还希望在前台执行pyth
python中logging模块假如遇到多线程或者多进程或者在web框架中自定义logging的话(一个请求就是一个独立的线程)非常容易重复打印日志和造成内存崩