summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVinay Sajip <vinay_sajip@yahoo.co.uk>2010-03-05 22:11:24 (GMT)
committerVinay Sajip <vinay_sajip@yahoo.co.uk>2010-03-05 22:11:24 (GMT)
commitd77eb9a839c497350d5874183b29df0bb0d14753 (patch)
tree7fecc48463a85dc055fe4929910cd2102fa92275
parentcecef392f103efceeedcdf48d4eccb01e859df43 (diff)
downloadcpython-d77eb9a839c497350d5874183b29df0bb0d14753.zip
cpython-d77eb9a839c497350d5874183b29df0bb0d14753.tar.gz
cpython-d77eb9a839c497350d5874183b29df0bb0d14753.tar.bz2
Factored out time usage determination into a method, to facilitate alternative formatting implementations in the future.
-rw-r--r--Lib/logging/__init__.py16
1 files changed, 11 insertions, 5 deletions
diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py
index b5c48d3..7d70b4a 100644
--- a/Lib/logging/__init__.py
+++ b/Lib/logging/__init__.py
@@ -434,6 +434,12 @@ class Formatter(object):
s = s[:-1]
return s
+ def usesTime(self):
+ """
+ Check if the format uses the creation time of the record.
+ """
+ return self._fmt.find("%(asctime)") >= 0
+
def format(self, record):
"""
Format the specified record as text.
@@ -442,13 +448,13 @@ class Formatter(object):
string formatting operation which yields the returned string.
Before formatting the dictionary, a couple of preparatory steps
are carried out. The message attribute of the record is computed
- using LogRecord.getMessage(). If the formatting string contains
- "%(asctime)", formatTime() is called to format the event time.
- If there is exception information, it is formatted using
- formatException() and appended to the message.
+ using LogRecord.getMessage(). If the formatting string uses the
+ time (as determined by a call to usesTime(), formatTime() is
+ called to format the event time. If there is exception information,
+ it is formatted using formatException() and appended to the message.
"""
record.message = record.getMessage()
- if self._fmt.find("%(asctime)") >= 0:
+ if self.usesTime():
record.asctime = self.formatTime(record, self.datefmt)
s = self._fmt % record.__dict__
if record.exc_info: