logging模块 日志文件

日志报错级别

报错是输出内容的格式规定

复制代码
 1 import logging
 2 # 初始化,实例化
 3 logger = logging.getLogger('test_log')
 4 # 设置级别    DEBUGE<INFO<WARNING<ERROR<CRITICAL
 5 logger.setLevel(logging.DEBUG)    # 设置最低级别,低于这个级别都不会记录
 6 # 定义handler
 7 
 8     # 控制台输出
 9 sh = logging.StreamHandler()
10 sh.setLevel(logging.ERROR)  # 低于ERROR的级别不会再控制台显示
11 
12     # 记录到文件里面去
13 fh = logging.FileHandler('test-file.log',encoding='utf-8')
14 fh.setLevel(logging.DEBUG)  # 低于DEBUG级别的不会写入日志文档
15 
16 # 格式化(定义输出信息的格式)
17 formater = logging.Formatter(   # 注意逗号‘,’在引号里面
18     '时间:%(asctime)s,'
19     '日志级别:%(levelname)s,'
20     '日志消息:%(message)s'
21 )
22 # 定义显示控制台和文件
23 sh.setFormatter(formater)   # 控制台
24 fh.setFormatter(formater)   # 文件
25 # 启动日志文件
26 logger.addHandler(sh)
27 logger.addHandler(fh)
28 # 测试
29 if __name__ == '__main__':
30     logger.debug('测试中')
31     logger.info('正常运行')
32     logger.warn('警告')
33     logger.error('报错')
34     logger.critical('崩溃')
35     def func(error):
36         try:
37             raise Exception(error)
38         except Exception as e:
39             logger.error(e)
40     func('我刚偷了你家一斤盐巴')
41     func('因为我是黑客')
42     func('看见日志你也找不到我')
43     func('就这么任性')
复制代码

控制台输出

日志文件

 

posted @   pywjh  阅读(318)  评论(0编辑  收藏  举报
编辑推荐:
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
阅读排行:
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 数据库服务器 SQL Server 版本升级公告
· 程序员常用高效实用工具推荐,办公效率提升利器!
· C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)
回到顶部
点击右上角即可分享
微信分享提示