[ 
https://issues.apache.org/jira/browse/LOG4J2-255?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13659559#comment-13659559
 ] 

Remko Popma commented on LOG4J2-255:
------------------------------------

Nick, nice find on the header being hard-coded to UTF-8 in XMLLayout!

I agree that the default encoding for XMLLayout should be UTF-8 if the user did 
not specify a charset in the config, but I would prefer to fix the hard-coded 
header to use the specified charset instead. I think it is ok to use 
user-specified encodings for XML 
(http://www.w3schools.com/xml/xml_encoding.asp) as long as the header correctly 
reflects that. 

Otherwise what you're saying sounds reasonable.

Perhaps the default encoding depends on the layout?
UTF-8: XMLLayout, RFC5424Layout (actually RFC5424 seems to require UTF-8 or 
US-ASCII)
Platform default: BasicLayout, PatternLayout

Not sure about HTMLLayout (leaning towards UTF-8) and SyslogLayout (no clue... 
What software would be used to view these log records?).

Regardless of what default we choose for HTMLLayout, the header needs to 
include the encoding name, for example:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
something like this should follow the <head> element near the top of the 
document.
                
> Multi-byte character strings are scrambled in log output
> --------------------------------------------------------
>
>                 Key: LOG4J2-255
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-255
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders, Core
>    Affects Versions: 2.0-beta6
>            Reporter: Remko Popma
>            Assignee: Remko Popma
>            Priority: Blocker
>             Fix For: 2.0-beta7
>
>
> When I tried to log a Japanese string the output was scrambled in both the 
> Console and a log file.
> For example,
> logger.warn("日本語テスト"); // (Japanese test)
> came out as
> 15:07:00.184 [main] WARN  test.JapaneseTest - 譌・譛ャ隱槭ユ繧ケ繝?
> This is the log4j2.xml configuration:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <configuration status="warn">
>     <appenders>
>         <Console name="Console" target="SYSTEM_OUT">
>             <PatternLayout>
>                 <pattern>%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n
>                 </pattern>
>             </PatternLayout>
>         </Console>
>         <File name="tracelog" fileName="trace-log.txt" immediateFlush="true" 
> append="false">
>             <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level 
> %logger{36} - %msg%n"/>
>         </File>
>     </appenders>
>     
>     <loggers>
>         <root level="trace">
>             <appender-ref ref="Console"/>
>             <appender-ref ref="tracelog"/>
>         </root>
>     </loggers>
> </configuration>
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org
For additional commands, e-mail: log4j-dev-h...@logging.apache.org

Reply via email to