使.log文件持久

时间:2018-08-23 13:29:27

标签: python file logging persistent-storage python-watchdog

我有一个生成.log文件的软件,问题是它们不是持久性的(每次程序尝试编写一个事件时,它可能会重写过去的事件,这是不希望的)

您知道我可以编写一种python脚本来检测程序何时打开.log文件以写点东西并确保他没有被覆盖的方法吗?

谢谢!

3 个答案:

答案 0 :(得分:0)

您正在尝试以写入模式打开日志文件。 您必须在追加模式下打开文件 试试

f=open('<filename>','a')
f.write(<log entry>)
f.close()

答案 1 :(得分:0)

您可以使用模块记录器,这特别适用于创建日志,如果您拥有无用的技术,则日志可能是短暂的;如果您希望保留日志,则可以制作:

import logging 
import logging.config 
logger = logging.getLogger(__name__) 
logging.config.fileConfig('mylog.log', disable_existing_loggers=False)
logger.info('It works!')

现在您可以看到一个名为lo mylog.log的文件名

答案 2 :(得分:0)

在Python中,logging软件包默认添加

import logging

logging.basicConfig(
            filename=<out-path>, # to print stdout to file
            format=line_format,
            level=logging.DEBUG)

然后,您可以通过

写入日志文件
logging.info(.)

logging's levels中的另一个。