有没有办法告诉 twistd 不要记录所有工厂和协议(protocol)的启动和停止。 我使用多种类型的协议(protocol)并执行大量连接……我的日志文件增长了很多。 所以我正在寻找一种简单的方法来禁用这些消息。
问候
最佳答案
您可以将工厂的 noisy
属性设置为 False
以防止它记录这些消息。另见 http://twistedmatrix.com/trac/ticket/4021这可能会在下一个 Twisted 版本中解决。
例如,这是一个有两个客户端的程序,但只有一个会记录其启动/停止消息:
import sys
from twisted.internet import reactor, protocol
from twisted.python import log
log.startLogging(sys.stdout)
f = protocol.ClientFactory()
f.protocol = protocol.Protocol
reactor.connectTCP('localhost', 22, f)
g = protocol.ClientFactory()
g.noisy = False
g.protocol = protocol.Protocol
reactor.connectTCP('localhost', 25, g)
reactor.run()
输出:
2011-02-22 09:43:23-0500 [-] Log opened.
2011-02-22 09:43:23-0500 [-] Starting factory <twisted.internet.protocol.ClientFactory instance at 0x8f422cc>
^C
2011-02-22 09:43:26-0500 [-] Received SIGINT, shutting down.
2011-02-22 09:43:26-0500 [Protocol,client] Stopping factory <twisted.internet.protocol.ClientFactory instance at 0x8f422cc>
2011-02-22 09:43:26-0500 [-] Main loop terminated.
关于python - 扭曲的启动/停止工厂/协议(protocol)噪音较小的日志消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5078980/