UTF-8 не работает Даже после настройки набора символов в slf4j logback.xml - PullRequest
0 голосов
/ 10 мая 2018

<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    <target>System.out</target>
    <encoder>
    <charset>UTF-8</charset>
        <pattern>%X{akkaTimestamp} %-5level %logger{35} - %msg%n</pattern>
    </encoder>
</appender>

<appender name="FILE"
    class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>log/akka.log</file>

    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
        <fileNamePattern>log/tests.%i.log.zip</fileNamePattern>
        <minIndex>1</minIndex>
        <maxIndex>250</maxIndex>
    </rollingPolicy>

    <triggeringPolicy
        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
        <maxFileSize>20MB</maxFileSize>
    </triggeringPolicy>
    <encoder>
        <charset>UTF-8</charset>
        <pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n
        </pattern>
    </encoder>
</appender>

<logger name="akka" level="INFO" />

<root level="INFO">
    <appender-ref ref="CONSOLE" />
    <appender-ref ref="FILE" />
</root>

Арабские символы не отображаются в файле журнала.Персонажи приходят как

**************************************************текст сообщения":"???? ??? ?? ???? ?? ????? ?????? ??."}***********************************

1 Ответ

0 голосов
/ 29 мая 2018

Работает после добавления

<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
    <charset>UTF-8</charset>
    <outputPatternAsHeader>true</outputPatternAsHeader> 
    <pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n </pattern>    
</encoder>

--- Полный файл

<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    <target>System.out</target>
    <encoder>
    <charset>UTF-8</charset>
        <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{35} - %msg%n</pattern>
    </encoder>
</appender>

<appender name="FILE"
    class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>log/akka.log</file>

    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
        <fileNamePattern>log/tests.%i.log.zip</fileNamePattern>
        <minIndex>1</minIndex>
        <maxIndex>250</maxIndex>
    </rollingPolicy>

    <triggeringPolicy
        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
        <maxFileSize>20MB</maxFileSize>
    </triggeringPolicy>
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
        <charset>UTF-8</charset>
        <outputPatternAsHeader>true</outputPatternAsHeader>
        <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{35} - %msg%n
        </pattern>
    </encoder>
</appender>

<logger name="akka" level="INFO" />

<root level="INFO">
    <appender-ref ref="CONSOLE" />
    <appender-ref ref="FILE" />
</root>

...