Issue #7077: logging: SysLogHandler now treats Unicode as per RFC 5424.
diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py
index bdf82af..d752063 100644
--- a/Lib/logging/handlers.py
+++ b/Lib/logging/handlers.py
@@ -31,6 +31,11 @@
     import codecs
 except ImportError:
     codecs = None
+try:
+    unicode
+    _unicode = True
+except NameError:
+    _unicode = False
 
 #
 # Some constants...
@@ -779,6 +784,11 @@
             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: