Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Twisted starting/stopping factory/protocol less noisy log messages

Tags:

python

twisted

Is there a way to tell to twistd to not log all factory and protocol start and stop. I use many type of protocols and performs a lot of connections ... and my log file grows a lot. So i'm looking for a simple way to disable those messages.

Regards

like image 325
Fbo Avatar asked Feb 22 '11 13:02

Fbo


1 Answers

You can set the noisy attribute of a factory to False to prevent it from logging these messages. See also http://twistedmatrix.com/trac/ticket/4021 which will probably be resolved by the next Twisted release.

For example, here's a program with two clients, but only one will log its start/stop messages:

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()

And the output:

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.
like image 158
Jean-Paul Calderone Avatar answered Oct 21 '22 02:10

Jean-Paul Calderone