[CalendarServer-changes] [2355]
CalendarServer/branches/users/wsanchez/logging/twistedcaldav/log.py
source_changes at macosforge.org
source_changes at macosforge.org
Fri Apr 25 19:21:28 PDT 2008
Revision: 2355
http://trac.macosforge.org/projects/calendarserver/changeset/2355
Author: wsanchez at apple.com
Date: 2008-04-25 19:21:28 -0700 (Fri, 25 Apr 2008)
Log Message:
-----------
Add some convenience methods to determine/set logging level for a
logger, and one to determine if a given log level will emit.
Also, determine whether to emit in emit(), though dreid will tell me
we need to move this to the observer, which will happen when I learn
how 'n stuff.
Modified Paths:
--------------
CalendarServer/branches/users/wsanchez/logging/twistedcaldav/log.py
Modified: CalendarServer/branches/users/wsanchez/logging/twistedcaldav/log.py
===================================================================
--- CalendarServer/branches/users/wsanchez/logging/twistedcaldav/log.py 2008-04-26 02:04:20 UTC (rev 2354)
+++ CalendarServer/branches/users/wsanchez/logging/twistedcaldav/log.py 2008-04-26 02:21:28 UTC (rev 2355)
@@ -158,14 +158,37 @@
Called internally to emit log messages at a given log level.
"""
assert level in logLevels
- log.msg(
- str(message),
- isError = (cmpLogLevels(level, "error") >= 0),
- level = level,
- namespace = self.namespace,
- **kwargs
- )
+ if self.willLogAtLevel(level):
+ log.msg(
+ "[#%s] %s" % (level, message),
+ isError = (cmpLogLevels(level, "error") >= 0),
+ level = level,
+ namespace = self.namespace,
+ **kwargs
+ )
+
+ def level(self):
+ """
+ @return: the logging level for this logger's namespace.
+ """
+ return logLevelForNamespace(self.namespace)
+
+ def setLevel(self, level):
+ """
+ Set the logging level for this logger's namespace.
+ @param level: a logging level
+ """
+ setLogLevelForNamespace(self.namespace, level)
+
+ def willLogAtLevel(self, level):
+ """
+ @param level: a logging level
+ @return: C{True} if this logger will log at the given logging
+ level.
+ """
+ return cmpLogLevels(self.level(), level) <= 0
+
class LoggingMixIn (object):
"""
Mix-in class for logging methods.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20080425/fb47bcda/attachment.html
More information about the calendarserver-changes
mailing list