diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py index 2d71470ceb5..2437c341aff 100644 --- a/Lib/logging/handlers.py +++ b/Lib/logging/handlers.py @@ -779,6 +779,10 @@ def emit(self, record): self.encodePriority(self.facility, self.mapPriority(record.levelname)), msg) + #Message is a string. Convert to bytes as required by RFC 5424 + msg = msg.encode('utf-8') + if codecs: + msg = codecs.BOM_UTF8 + msg try: if self.unixsocket: try: diff --git a/Misc/NEWS b/Misc/NEWS index 8984e6fb035..96ee2ac611c 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -104,6 +104,8 @@ C-API Library ------- +- Issue #7077: logging: SysLogHandler now treats Unicode as per RFC 5424. + - Issue #7099: Decimal.is_normal now returns True for numbers with exponent larger than emax.