import logging
import time
import os
class Log(object):
def __init__(self
, log_dir
):
"""
指定保存日志的文件路径,日志级别,以及调用文件将日志存入到指定的文件中
"""
self
.log_dir
= log_dir
if not os
.path
.exists
(self
.log_dir
):
os
.mkdir
(self
.log_dir
)
def get_log(self
, log_name
, mode
='a'):
logger_name
= log_name
[:-4] if log_name
.endswith
('.log') else log_name
logger
= logging
.getLogger
(logger_name
)
logger
.setLevel
(logging
.DEBUG
)
log_path
= os
.path
.join
(self
.log_dir
, log_name
)
fh
= logging
.FileHandler
(log_path
, mode
=mode
, encoding
='utf-8')
fh
.setLevel
(logging
.INFO
)
ch
= logging
.StreamHandler
()
ch
.setLevel
(logging
.INFO
)
formatter
= logging
.Formatter
(
'[%(asctime)s] %(filename)s->%(funcName)s line:%(lineno)d [%(levelname)s]%(message)s')
fh
.setFormatter
(formatter
)
ch
.setFormatter
(formatter
)
logger
.addHandler
(fh
)
logger
.addHandler
(ch
)
fh
.close
()
ch
.close
()
return logger
log_dir
= r
'/home/gzblue/ljh/virtual_proj/smoke/region/chengdu/output_data/log_data'
base_log
= Log
(log_dir
)
check_config_logger
= base_log
.get_log
('check_config.log', mode
='w')
background_preprocess_logger
= base_log
.get_log
('background_preprocess.log', mode
='w')
main_logger
= base_log
.get_log
('main.log', mode
='a')
if __name__
== '__main__':
log_dir
= r
'log_data'
log_name
= r
'test.log'
log
= Log
(log_dir
)
logger
= log
.get_log
(log_name
)
logger
.info
('This is a')
logger
.info
('This is b')
logger
.warning
('This is c')
转载请注明原文地址: https://mac.8miu.com/read-483734.html