diff options
author | Vijay Pandurangan <vijayp@vijayp.ca> | 2011-11-19 11:30:44 -0800 |
---|---|---|
committer | Vijay Pandurangan <vijayp@vijayp.ca> | 2011-11-19 11:30:44 -0800 |
commit | 6f3cc77bb52349b1b88d0dd6edd2ba77141bc7f6 (patch) | |
tree | ca30a84c518db108faa78a97983aee9a6feccbd2 /sleekxmpp/features | |
parent | 7945b3e7389516ebd3267dbba83e7564813c3012 (diff) | |
download | slixmpp-6f3cc77bb52349b1b88d0dd6edd2ba77141bc7f6.tar.gz slixmpp-6f3cc77bb52349b1b88d0dd6edd2ba77141bc7f6.tar.bz2 slixmpp-6f3cc77bb52349b1b88d0dd6edd2ba77141bc7f6.tar.xz slixmpp-6f3cc77bb52349b1b88d0dd6edd2ba77141bc7f6.zip |
This change stops sleekxmpp from spending huge amounts of time unnecessarily computing logging data that may never be used. This is a HUGE performance improvement; in some of my test runs, unnecessary string creation was accounting for > 60% of all CPU time.
Note that using % in a string will _always_ perform the sting substitutions, because the strings are constructed before the function is called. So log.debug('%s' % expensiveoperation()) will take about the same CPU time whether or not the logging level is DEBUG or INFO. if you use , no substitutions are performed unless the string is actually logged
Diffstat (limited to 'sleekxmpp/features')
-rw-r--r-- | sleekxmpp/features/feature_bind/bind.py | 4 | ||||
-rw-r--r-- | sleekxmpp/features/feature_mechanisms/mechanisms.py | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/sleekxmpp/features/feature_bind/bind.py b/sleekxmpp/features/feature_bind/bind.py index de03192c..ac3f4476 100644 --- a/sleekxmpp/features/feature_bind/bind.py +++ b/sleekxmpp/features/feature_bind/bind.py @@ -42,7 +42,7 @@ class feature_bind(base_plugin): Arguments: features -- The stream features stanza. """ - log.debug("Requesting resource: %s" % self.xmpp.boundjid.resource) + log.debug("Requesting resource: %s" , self.xmpp.boundjid.resource) iq = self.xmpp.Iq() iq['type'] = 'set' iq.enable('bind') @@ -55,7 +55,7 @@ class feature_bind(base_plugin): self.xmpp.features.add('bind') - log.info("Node set to: %s" % self.xmpp.boundjid.full) + log.info("Node set to: %s" , self.xmpp.boundjid.full) if 'session' not in features['features']: log.debug("Established Session") diff --git a/sleekxmpp/features/feature_mechanisms/mechanisms.py b/sleekxmpp/features/feature_mechanisms/mechanisms.py index a6cff0a0..5e5f0cd1 100644 --- a/sleekxmpp/features/feature_mechanisms/mechanisms.py +++ b/sleekxmpp/features/feature_mechanisms/mechanisms.py @@ -123,7 +123,7 @@ class feature_mechanisms(base_plugin): def _handle_fail(self, stanza): """SASL authentication failed. Disconnect and shutdown.""" - log.info("Authentication failed: %s" % stanza['condition']) + log.info("Authentication failed: %s" , stanza['condition']) self.xmpp.event("failed_auth", stanza, direct=True) self.xmpp.disconnect() return True |