环境摘要:
嗨,我有一个Python项目,我从存储系统中请求一些信息,并将其显示在屏幕上。
环境:
模块执行器 模块rest有一个RestThreePar类 模块存储箱具有一个类StorageBox 模块定位器具有Locater类
问题:
我想实现一个单独的模块/类,用于记录Hole项目,这需要将内容记录到4个不同的文件中(每个模块都有自己的日志文件)。当我分别为每个模块导入日志记录时,它的工作与预期的一样,但是每当我尝试制作一个单独的类并导入该类时(例如从logger导入Logger导入),都会出错(我不确定,但看起来它多次写了一行)在文件中。)
我不是开发人员,也不知道下一步该怎么做。
我尝试使用python文档,但没有成功。 https://docs.python.org/3.6/howto/logging-cookbook.html
import logging
import os
class Logger:
def __init__(self, cls_name, file):
self.cls_name = cls_name
current_dir = os.getcwd()
self.file = f'{current_dir}/logs/{file}'
def log(self):
logger = logging.getLogger(self.cls_name)
logger.setLevel(logging.INFO)
formatter = logging.Formatter('%(asctime)s,%(levelname)s,%(name)s,%(message)s')
file_handler = logging.FileHandler(self.file)
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
return logger
def log_info(self, msg):
logger = self.log()
logger.info(msg)
def log_exception(self, msg):
logger = self.log()
logger.exception(msg)
if __name__ == '__main__':
pass