本文目录一览:
我如何着色Python日志输出
终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关。控制字符颜色的转义序列是以ESC开头,即用\033来完成 !
如何python运行输出的东西加颜色
格式:\033[显示方式;前景色;背景色m
说明:
前景色 背景色 颜色
—————————————
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
显示方式 意义
————————-
0 终端默认设置
1 高亮显示
4 使用下划线
5 闪烁
7 反白显示
8 不可见
例子:
\033[1;31;40m !–1-高亮显示 31-前景色红色 40-背景色黑色–
\033[0m !–采用终端默认设置,即取消颜色设置–
python中更优雅的记录日志
在以往我们使用日志,更多的是使用 python 自带的 logging 模块,它可以设置错误等级、输出方式等。
但使用方式相对比较复杂,想要更好的使用需要如 log4net 一样单独配置,这在 python 中感觉不是很优雅。
下面介绍一个 python 库: loguru 。 guru 是印度语中大师的意思, loguru 直译就是“日志大师”。
如图 logging 一样, loguru 也有定义日志等级。不同的日志等级,输出效果也不一样(默认的等级由低到高是 DEBUG 、 INFO 、 WARNING 、 ERROR 、 CRITICAL ,也可以自己使用 level 函数定义)。
类似 logging 中的 logger.addHandler ,loguru统一使用 add 函数来管理格式、文件输出、过滤等操作,它提供了许多参数来实现 logger.addHandler 中的配置更加简单方便。
其中 sink 是最重要的参数,可以传入不同的数据类型。传入文件路径、文件句柄、 sys.stderr 、甚至 logging 模块的 Handler 如 FileHandler 、 StreamHandler 等,这样就可以快速实现自定义的 Handler 配置。
通过给 remove 方法传递 add 方法返回的对象, 可以删除 add 方法添加的 sink ,这里的 remove 并不是删除 test2.log 文件,而是停止向该文件输出日志,需要需要继续记录日志则需要重新 add 日志文件。
用 rotation 、 retention 、 compression 进行日志窗口、更新、压缩管理。
支持控制台输出添加颜色, 除了基础色, loguru 甚至允许16进制、RGB格式的颜色值和加粗、下划线等样式。
使用装饰器 @logger.catch 可以和 logging 一样使用 logger.exception 函数来记录异常信息。
使用 exception 方法输出的异常信息包含堆栈信息和当前变量的值,方便问题定位。
使用 serialize 可以将日志转换为 JSON 格式, enqueue 可以保证多线程、多进程安全。
修改时间格式。
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/184889.html