Logging.py
2.29 KB
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import logging,os
class Logger():
def __init__(self, path=__name__,clevel = logging.ERROR,Flevel = logging.DEBUG,test = 'w'):
#test = 'w'时每次日志文件都重新写入,test = 'a'时为追加模式,在原来日志文件上追加日志
#重写模式的时,发送test.log没有信息,用追加模式可以(注意如果为a时日志可能出现重复,为w时没有这个现象)
#设置日志路径
current_path=os.path.dirname(os.path.dirname(__file__))
path=current_path+"/report"+"/test.log"
self.logger = logging.getLogger(path)
self.logger.setLevel(logging.DEBUG)
fmt = logging.Formatter('[%(asctime)s] [%(levelname)s] : %(message)s', '%Y-%m-%d %H:%M:%S')
# fmt = logging.Formatter('[%(asctime)s] %(levelname)s [%(name)s,%(funcName)s: %(filename)s, %(lineno)d] %(message)s', '%Y-%m-%d %H:%M:%S')
#设置CMD日志
sh = logging.StreamHandler()
sh.setFormatter(fmt)
sh.setLevel(clevel)
#设置文件日志
fh = logging.FileHandler(path,mode=test,encoding="utf-8")
fh.setFormatter(fmt)
fh.setLevel(Flevel)
self.logger.addHandler(sh)
self.logger.addHandler(fh)
def debug(self,message):
#初始化得时候self.logger = logging.getLogger(path)
self.logger.debug(message)
def info(self,message):
self.logger.info(message)
def warn(self,message):
self.logger.warn(message)
def error(self,message):
self.logger.error(message)
def critical(self,message):
self.logger.critical(message)
# a=Logger()
# a.info("123")
# from Case_Method.Logging import *
# logcommonsonfig(level=logging.DEBUG, # log level
# format='[%(asctime)s] %(levelname)s [%(funcName)s: %(filename)s, %(lineno)d] %(message)s', # log格式
# datefmt='%Y-%m-%d %H:%M:%S', # 日期格式
# filename='test.log', # 日志输出文件
# filemode='a') # 追加模式