In previous versions of JBoss EAP 6, using `org.jboss.logmanager.handlers.SyslogHandler` to log multi-byte characters may result in corrupted output recorded in the log. For example:
Mar 8 17:29:09 UNKNOWN_HOSTNAME java: SyslogHandler: ????????????
This issue has been resolved in this release and now characters are output to the log as expected.
Created attachment 893868 [details]
Description of problem:
I tried to log multi-byte message with both of org.jboss.logmanager.handlers.SyslogHandler and org.apache.log4j.net.SyslogAppender for same message, only SyslogHandler output were corrupted.
Steps to Reproduce:
The same as described in LOGMGR-104. I attached the war file for convenience.
1. Configure syslog handler for category "utf8mb4log.LoggingServlet".
2. Deploy the app, utf8mb4log.war
3. Access the servlet, curl 'http://localhost:8080/utf8mb4log/'
Some of log messages in /var/log/messages are corrupted like https://issues.jboss.org/secure/attachment/12381063/corrupted.png
Exactly the same log messages should be printed in /var/log/messages as well as server.log, like https://issues.jboss.org/secure/attachment/12381065/corrupted3.png
Some messages may not be printed well in your terminal because of lack of font.
Log manager updated which fixes this issue.
Using the provided reproducer:
(1) EAP 6.3.0.GA:
Sep 25 16:30:25 - java 2-byte char: À
Sep 25 16:30:25 - java 3-byte char: ���
Sep 25 16:30:25 - java 4-byte char: ����ٖ
(2) EAP 6.4.0.DR2:
Sep 25 16:35:01 - java 2-byte char: À
Sep 25 16:35:01 - java 3-byte char: あ
Sep 25 16:35:01 - java 4-byte char: