Python中的日志模块

日志的作用

  • 日记
  • 程序行为
  • 重要信息记录

日志的等级

  • debug
  • info
  • warning
  • error
  • critical

logging模块的使用

  • logging.basicConfig
参数名 作用 举例
level 日志输出等级 level = logging.DEBUG
format 日志输出格式
filename 存储位置 filename = 'd://back.log'
filemode 输入模式 filemode = "w"
format具体格式
格式符 含义
%(levelname)s 日志级别名称
%(pathname)s 执行程序的路径
%(filename)s 执行程序名
%(lineno)d 日志的当前行号
%(asctime)s 打印日志的时间
%(message)s 日志信息
  • format = '%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s'
  • (常用的格式)

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# coding:utf-8

import logging
import os


def init_log(path):
if os.path.exists(path):
mode = 'a'
else:
mode = 'w'
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s %(filename)s %(lineno)d %(levelname)s %(message)s',
filename=path,
filemode=mode
)
return logging


current_path = os.getcwd()
path = os.path.join(current_path, 'back.log')
log = init_log(path)
# log = init_log()

log.info('这是第一个记录的日志信息')
log.warning('这是一个警告')
log.error('这是一个重大的错误信息')
log.debug('这是一个debug')