Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-783

PatternLayout's default charset should not be UTF-8

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.1, 2.0.2
    • Fix Version/s: 2.1
    • Component/s: Core
    • Labels:
    • Environment:

      Win8(Simplified Chinese), Tomcat 7

      Description

      According to log4j2's manual about PatternLayout's charset attribute, if the attribute is not specified, the default system Charset will be used.

      But in my environemnt (Win8 Simplified Chinese + Tomcat 7), if the attribute is not specified, the Chinese words cannot display properly in console. If I add charset="UTF-8" to <Console>'s <PatternLayout> element, the error still exists. But if I modify it to charset="GBK", the problem can be resolved.

      So I think, The default charset is UTF-8, not the default system Charset as the manual announced. I got the source file, and found it in PatternLayout's Builder inner class:

      private Charset charset = Charsets.UTF_8;

      I modify it to:

      private Charset charset = Charset.defaultCharset();

      and remove the charset attribute in XML's <PatternLayout> element, the Chinese words can display properly as expected.

      So, I think it may be a bug and reported it here.

      Thanks!

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                remkop@yahoo.com Remko Popma
                Reporter:
                Minglei.Lee Minglei Lee
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - 72h
                  72h
                  Remaining:
                  Remaining Estimate - 72h
                  72h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified