Python 机器人框架信息消息未打印
我的python代码使用日志框架生成一个日志文件,所有Python 机器人框架信息消息未打印,python,logging,robotframework,Python,Logging,Robotframework,我的python代码使用日志框架生成一个日志文件,所有INFO消息都被捕获到日志文件中。我将我的程序与ROBOT框架集成,现在没有生成日志文件。相反,INFO消息将打印在log.html中。我理解这是因为正在调用robot现有记录器,因此INFO被定向到log.html。我不想改变行为,我仍然希望用户定义的日志文件单独生成,只包含INFO级别的消息 我怎样才能做到这一点呢?这个问题现在已经解决了,这是一个非常小的问题。但我仍在深入分析,当我弄清楚确切的原因时,我会更新。 这是我使用的模块 def
INFO
消息都被捕获到日志文件中。我将我的程序与ROBOT框架集成,现在没有生成日志文件。相反,INFO
消息将打印在log.html
中。我理解这是因为正在调用robot现有记录器,因此INFO
被定向到log.html
。我不想改变行为,我仍然希望用户定义的日志文件单独生成,只包含INFO
级别的消息
我怎样才能做到这一点呢?这个问题现在已经解决了,这是一个非常小的问题。但我仍在深入分析,当我弄清楚确切的原因时,我会更新。 这是我使用的模块
def call_logger(logger_name, logFile):
level = logging.INFO
l = logging.getLogger(logger_name)
if not getattr(l, 'handler_set', None):
formatter = logging.Formatter('%(asctime)s : %(message)s')
fileHandler = logging.FileHandler(logFile, mode = 'a')
fileHandler.setFormatter(formatter)
streamHandler = logging.StreamHandler()
streamHandler.setFormatter(formatter)
l.setLevel(level)
l.addHandler(fileHandler)
l.addHandler(streamHandler)
l.handler_set = True
当我将参数“logFile”更改为另一个名称“logu file”时,它起作用了。
看起来“logFile”是一个内置的robot关键字。问题现在已经解决,这是一个非常小的问题。但我仍在深入分析,当我弄清楚确切的原因时,我会更新。 这是我使用的模块
def call_logger(logger_name, logFile):
level = logging.INFO
l = logging.getLogger(logger_name)
if not getattr(l, 'handler_set', None):
formatter = logging.Formatter('%(asctime)s : %(message)s')
fileHandler = logging.FileHandler(logFile, mode = 'a')
fileHandler.setFormatter(formatter)
streamHandler = logging.StreamHandler()
streamHandler.setFormatter(formatter)
l.setLevel(level)
l.addHandler(fileHandler)
l.addHandler(streamHandler)
l.handler_set = True
当我将参数“logFile”更改为另一个名称“logu file”时,它起作用了。
“日志文件”似乎是内置的robot关键字。Python代码-->日志库-->“日志文件”
RobotFramework-->Python代码-->日志库-->默认为“log.html”
当您使用python代码运行时,它将允许您设置日志文件名。
但是,当您使用robotframework运行时,该文件默认设置为log.html(因为robot在内部使用与您使用的日志库相同的日志库),因此您的日志函数将被robotframework的日志函数覆盖
这就是为什么您会在log.html中看到它而不是您的文件
你也可以参考
希望有帮助 Python代码-->日志库-->“日志文件”
RobotFramework-->Python代码-->日志库-->默认为“log.html”
当您使用python代码运行时,它将允许您设置日志文件名。
但是,当您使用robotframework运行时,该文件默认设置为log.html(因为robot在内部使用与您使用的日志库相同的日志库),因此您的日志函数将被robotframework的日志函数覆盖
这就是为什么您会在log.html中看到它而不是您的文件
你也可以参考
希望有帮助 你能描述一下你是如何创建和使用你的日志的吗?您是否使用默认记录器?请说明这是使用robot logger接口还是侦听器API?您能否描述如何创建和使用记录器等?您是否使用默认记录器?请说明这是使用robot logger接口还是侦听器API?