python--logging日志模块


一、基本介绍
  logging 模块是python自带的一个包,因此在使用的时候,不必安装,只需要import即可。
  logging有 5 个不同层次的日志级别,可以将给定的 logger 配置为这些级别:
    DEBUG:详细信息,用于诊断问题。Value=10。
    INFO:确认代码运行正常。Value=20。
    WARNING:意想不到的事情发生了,或预示着某个问题。但软件仍按预期运行。Value=30。
    ERROR:出现更严重的问题,软件无法执行某些功能。Value=40。
    CRITICAL:严重错误,程序本身可能无法继续运行。Value=50。


二、基本操作
  主要调用logging.basicConfig(***kwargs*)这个函数对logging进行设置。函数常用的参数如下:

    level:主要调整logging的级别
    filename:输出日志的路径
    filemode:直接写入还是追加写入
    format:输出的格式

示例一:通过调整format,可以输出我们想要的格式

1 import logging
2 
3 logging.basicConfig(format='%(asctime)s - %(message)s', datefmt='%d-%b-%y %H:%M:%S')
4 logging.warning('Admin logged out')
View Code

结果:

12-Jul-18 20:53:19 - Admin logged out

示例二:logging写多文件日志

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 """
 4 logging模块写多文件日志
 5 """
 6 
 7 import logging
 8 
 9 #创建文件
10 file_1 = logging.FileHandler('log_1.log', 'a')
11 #创建格式
12 fat = logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s - %(module)s - %(message)s")
13 #文件应用格式
14 file_1.setFormatter(fat)
15 
16 file_2 = logging.FileHandler('log_2.log', 'a')
17 fmt = logging.Formatter()
18 file_2.setFormatter(fmt)
19 
20 logger1 = logging.Logger('s1', level=logging.ERROR)
21 
22 logger1.addHandler(file_1)
23 logger1.addHandler(file_2)
24 
25 #写日志
26 logger1.critical("i'm a error!")
View Code
原文地址:https://www.cnblogs.com/june-L/p/11657311.html