[twisted] 使用 logfile

ⅰ亾dé卋堺 提交于 2019-11-27 19:06:30

怎么使用 Twisted 的 log,看这:

http://twistedmatrix.com/documents/current/core/howto/logging.html

Twisted 中还定义了常用的 logfile,下面来说说用法。

LogFile

支持 rotate log file,就是超过大小自动生成新的 log 文件。

--------------------------------------------------------------

from twisted.python.logfile import LogFile

fout = LogFile("a.txt", "/home/kasicass/sandbox/twisted/log", rotateLength=100)

for i in xrange(1, 20):

    fout.write("myhello = %d\n" % i)

fout.close()

--------------------------------------------------------------

当文件超过 rotateLength 大小,则把生成:

a.txt      # 当前正在写的log

a.txt.1

a.txt.2

...

a.txt.n    # 最老的log

有个问题,就是每次 a.txt 达到 rotateLength 大小,则会

mv a.txt.n a.txt.n+1

...

mv a.txt.2 a.txt.3

mv a.txt.1 a.txt.2

mv a.txt a.txt.1

这样,文件多了,mv 的消耗很大。

DailyLogFile

还有一种常见的情况,就是每日新生成一个 log 文件。

--------------------------------------------------------------

from twisted.python.logfile import DailyLogFile

fout = DailyLogFile("a.txt", "/home/kasicass/sandbox/twisted/log")

fout.write("hello1\n")

fout.write("hello2\n")

fout.rotate()

fout.write("good!\n")

fout.close()

----------------

过一天,则自动生成一个新的文件


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!