[Python-checkins] r84218 - python/branches/py3k/Lib/logging/handlers.py
vinay.sajip
python-checkins at python.org
Fri Aug 20 00:20:22 CEST 2010
Author: vinay.sajip
Date: Fri Aug 20 00:20:22 2010
New Revision: 84218
Log:
Issue #7077: Fixed SysLogHandler implementation of Unicode handling.
Modified:
python/branches/py3k/Lib/logging/handlers.py
Modified: python/branches/py3k/Lib/logging/handlers.py
==============================================================================
--- python/branches/py3k/Lib/logging/handlers.py (original)
+++ python/branches/py3k/Lib/logging/handlers.py Fri Aug 20 00:20:22 2010
@@ -732,12 +732,6 @@
self.socket = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
self.socket.connect(address)
- # curious: when talking to the unix-domain '/dev/log' socket, a
- # zero-terminator seems to be required. this string is placed
- # into a class variable so that it can be overridden if
- # necessary.
- log_format_string = '<%d>%s\000'
-
def encodePriority(self, facility, priority):
"""
Encode the facility and priority. You can pass in strings or
@@ -781,14 +775,14 @@
We need to convert record level to lowercase, maybe this will
change in the future.
"""
- msg = self.log_format_string % (
- self.encodePriority(self.facility,
- self.mapPriority(record.levelname)),
- msg)
+ prio = '<%d>' % self.encodePriority(self.facility,
+ self.mapPriority(record.levelname))
+ prio = prio.encode('utf-8')
#Message is a string. Convert to bytes as required by RFC 5424
msg = msg.encode('utf-8')
if codecs:
msg = codecs.BOM_UTF8 + msg
+ msg = prio + msg
try:
if self.unixsocket:
try:
More information about the Python-checkins
mailing list