gpt4 book ai didi

python - 如何记录多个文件中发生某事的次数?

转载 作者:太空宇宙 更新时间:2023-11-03 19:29:27 26 4
gpt4 key购买 nike

我希望对特定事情发生的次数以及非常重要的事情发生的时间进行总结。我举个例子...

我的代码建立 ssh 连接并运行命令。每次脚本失去与 ssh 服务器的连接时,都会引发并处理异常。假设这种类型的异常在多个文件中以不同的方式处理。我如何记录处理此问题的次数?这并不特定于异常(exception)情况。例如,如果我运行一个命令并得到某个响应,我想记录下发生了这种情况。当脚本结束时,我需要记录所有这些(我已经知道如何设置记录器)。

这样做的原因是因为我的脚本记录了大量信息,并且我希望能够快速总结日志文件末尾发生的重要事情。

tldr;如何记录多个文件中发生某事的次数/发生某事的次数,以便我可以在脚本结束时记录它?

最佳答案

尝试子类化 logging.Handler 并重写 handleemit 方法来检查正在发送的消息并在适当的地方增加计数器,然后将此处理程序添加到应用程序的根记录器中,如下所示:

import logging
counter = 0
class CounterHandler(logging.Handler):
def emit(self, record):
global counter
if record.msg == "Connection lost. Reconnecting.":
counter += 1

root_logger = logging.getLogger()
root_logger.addHandler(CounterHandler())

您可以对此进行扩展,使其更通用或更强大,但这是实现您正在寻找的目标的一种方法。

关于python - 如何记录多个文件中发生某事的次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6680695/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com