Issue #8795: logging: Backported trunk fix for SysLogHandler and Unicode.

This commit is contained in:
Vinay Sajip 2010-05-24 09:43:13 +00:00
parent c28d554db8
commit cb7ea2912a
1 changed files with 10 additions and 0 deletions

View File

@ -31,6 +31,11 @@ try:
import codecs
except ImportError:
codecs = None
try:
unicode
_unicode = True
except NameError:
_unicode = False
#
# Some constants...
@ -777,6 +782,11 @@ class SysLogHandler(logging.Handler):
self.encodePriority(self.facility,
self.mapPriority(record.levelname)),
msg)
# Treat unicode messages as required by RFC 5424
if _unicode and type(msg) is unicode:
msg = msg.encode('utf-8')
if codecs:
msg = codecs.BOM_UTF8 + msg
try:
if self.unixsocket:
try: