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('就这么任性')

控制台输出

日志文件

原文地址:https://www.cnblogs.com/pywjh/p/9462289.html