[CalendarServer-changes] [11340] CalendarServer/trunk
source_changes at macosforge.org
source_changes at macosforge.org
Thu Jun 13 15:20:49 PDT 2013
Revision: 11340
http://trac.calendarserver.org//changeset/11340
Author: wsanchez at apple.com
Date: 2013-06-13 15:20:49 -0700 (Thu, 13 Jun 2013)
Log Message:
-----------
Get rid of Logger.willLogAtLevel()
Add level argument to Logger.failure()
Modified Paths:
--------------
CalendarServer/trunk/twext/python/log.py
CalendarServer/trunk/twext/python/test/test_log.py
CalendarServer/trunk/twistedcaldav/memcacheprops.py
CalendarServer/trunk/twistedcaldav/storebridge.py
CalendarServer/trunk/txdav/caldav/datastore/scheduling/caldav/delivery.py
Modified: CalendarServer/trunk/twext/python/log.py
===================================================================
--- CalendarServer/trunk/twext/python/log.py 2013-06-13 21:40:03 UTC (rev 11339)
+++ CalendarServer/trunk/twext/python/log.py 2013-06-13 22:20:49 UTC (rev 11340)
@@ -346,7 +346,7 @@
TheLogPublisher(event)
- def failure(self, format, failure=None, **kwargs):
+ def failure(self, format, failure=None, level=LogLevel.error, **kwargs):
"""
Log an failure and emit a traceback.
@@ -369,13 +369,15 @@
@param failure: a L{Failure} to log. If C{None}, a L{Failure} is
created from the exception in flight.
+ @param level: a L{LogLevel} to use.
+
@param kwargs: additional keyword parameters to include with the
event.
"""
if failure is None:
failure=Failure()
- self.emit(LogLevel.error, format, log_failure=failure, **kwargs)
+ self.emit(level, format, log_failure=failure, **kwargs)
def level(self):
@@ -394,17 +396,7 @@
setLogLevelForNamespace(self.namespace, level)
- def willLogAtLevel(self, level):
- """
- @param level: a L{LogLevel}
- @return: true if this logger will emit at the given log level,
- otherwise false.
- """
- return self.level() <= level
-
-
-
class LegacyLogger(Logger):
"""
A L{Logger} that provides some compatibility with the L{twisted.python.log}
@@ -459,9 +451,6 @@
def log_emit(self, format=None, **kwargs):
self.emit(level, format, **kwargs)
- def will_emit(self):
- return self.willLogAtLevel(level)
-
log_emit.__doc__ = doc
setattr(Logger, level.name, log_emit)
@@ -572,7 +561,8 @@
self.observer = observer
- def eventShouldForward(self, event):
+ @staticmethod
+ def eventShouldLog(event):
if event["log_level"] >= logLevelForNamespace(event["log_namespace"]):
return True
else:
@@ -580,7 +570,7 @@
def __call__(self, event):
- if self.eventShouldForward(event):
+ if self.eventShouldLog(event):
self.observer(event)
Modified: CalendarServer/trunk/twext/python/test/test_log.py
===================================================================
--- CalendarServer/trunk/twext/python/test/test_log.py 2013-06-13 21:40:03 UTC (rev 11339)
+++ CalendarServer/trunk/twext/python/test/test_log.py 2013-06-13 22:20:49 UTC (rev 11340)
@@ -163,7 +163,7 @@
self.assertEquals(log.emitted["format"], format)
self.assertEquals(log.emitted["kwargs"]["junk"], message)
- if log.willLogAtLevel(level):
+ if level >= log.level():
self.assertEquals(log.event["log_format"], format)
self.assertEquals(log.event["log_level"], level)
self.assertEquals(log.event["log_namespace"], __name__)
@@ -310,19 +310,6 @@
self.assertIdentical(level, logLevelForNamespace(log.namespace))
- def test_willLogAtLevel(self):
- """
- willLogAtLevel()
- """
- log = Logger()
-
- for level in LogLevel.iterconstants():
- if level < log.level():
- self.assertFalse(log.willLogAtLevel(level), (level, log.level()))
- else:
- self.assertTrue(log.willLogAtLevel(level), (level, log.level()))
-
-
def test_logInvalidLogLevel(self):
"""
Test passing in a bogus log level to C{emit()}.
Modified: CalendarServer/trunk/twistedcaldav/memcacheprops.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/memcacheprops.py 2013-06-13 21:40:03 UTC (rev 11339)
+++ CalendarServer/trunk/twistedcaldav/memcacheprops.py 2013-06-13 22:20:49 UTC (rev 11340)
@@ -145,16 +145,16 @@
result = self._split_gets_multi((key for key, _ignore_name in keys),
client.gets_multi)
- if self.log.willLogAtLevel("debug"):
- if abortIfMissing:
- missing = "missing "
- else:
- missing = ""
- self.log.debug("Loaded keys for %schildren of %s: %s" % (
- missing,
- self.collection,
- [name for _ignore_key, name in keys],
- ))
+ if abortIfMissing:
+ missing = "missing "
+ else:
+ missing = ""
+ self.log.debug(
+ "Loaded keys for {missing}children of {collection}: {children}",
+ missing=missing, collection=self.collection,
+ children=[name for _ignore_key, name in keys],
+ )
+ # FIXME.logging: defer the above list comprehension
missing = tuple((
name for key, name in keys
Modified: CalendarServer/trunk/twistedcaldav/storebridge.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/storebridge.py 2013-06-13 21:40:03 UTC (rev 11339)
+++ CalendarServer/trunk/twistedcaldav/storebridge.py 2013-06-13 22:20:49 UTC (rev 11340)
@@ -82,7 +82,6 @@
from twistedcaldav.customxml import calendarserver_namespace
from twistedcaldav.instance import InvalidOverriddenInstanceError, \
TooManyInstancesError
-from twisted.python.failure import Failure
"""
Wrappers to translate between the APIs in L{txdav.caldav.icalendarstore} and
Modified: CalendarServer/trunk/txdav/caldav/datastore/scheduling/caldav/delivery.py
===================================================================
--- CalendarServer/trunk/txdav/caldav/datastore/scheduling/caldav/delivery.py 2013-06-13 21:40:03 UTC (rev 11339)
+++ CalendarServer/trunk/txdav/caldav/datastore/scheduling/caldav/delivery.py 2013-06-13 22:20:49 UTC (rev 11340)
@@ -134,10 +134,15 @@
recipient,
noAttendeeRefresh=self.scheduler.noAttendeeRefresh,
))
- except ImplicitProcessorException, e:
- log.error("Could not store data in Inbox : %s" % (recipient.inbox,))
- if log.willLogAtLevel(LogLevel.debug):
- log.debug("%s: %s" % (e, Failure().getTraceback(),))
+ except ImplicitProcessorException as e:
+ log.failure(
+ "Could not store data in inbox {inbox}",
+ inbox=recipient.inbox, level=LogLevel.debug
+ )
+ log.error(
+ "Could not store data in inbox {inbox}",
+ inbox=recipient.inbox
+ )
err = HTTPError(ErrorResponse(
responsecode.FORBIDDEN,
(caldav_namespace, "recipient-permissions"),
@@ -151,10 +156,14 @@
try:
child = yield recipient.inbox._createCalendarObjectWithNameInternal(name, self.scheduler.calendar, ComponentUpdateState.INBOX)
except Exception as e:
- # FIXME: Bare except
- log.error("Could not store data in Inbox : %s %s" % (recipient.inbox, e,))
- if log.willLogAtLevel(LogLevel.debug):
- log.debug("Bare Exception: %s" % (Failure().getTraceback(),))
+ log.failure(
+ "Could not store data in inbox {inbox}: {error}",
+ inbox=recipient.inbox, error=e, level=LogLevel.debug
+ )
+ log.error(
+ "Could not store data in inbox {inbox}: {error}",
+ inbox=recipient.inbox, error=e
+ )
err = HTTPError(ErrorResponse(
responsecode.FORBIDDEN,
(caldav_namespace, "recipient-permissions"),
@@ -194,10 +203,15 @@
remote,
event_details,
))
- except:
- log.error("Could not determine free busy information: %s" % (recipient.cuaddr,))
- if log.willLogAtLevel(LogLevel.debug):
- log.debug("Bare Exception: %s" % (Failure().getTraceback(),))
+ except Exception:
+ log.failure(
+ "Could not determine free busy information for recipient {cuaddr}",
+ cuaddr=recipient.cuaddr, level=LogLevel.debug
+ )
+ log.error(
+ "Could not determine free busy information for recipient {cuaddr}",
+ cuaddr=recipient.cuaddr
+ )
err = HTTPError(ErrorResponse(
responsecode.FORBIDDEN,
(caldav_namespace, "recipient-permissions"),
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20130613/28f42791/attachment-0001.html>
More information about the calendarserver-changes
mailing list