Как написать XML logback для определенного шаблона grok - PullRequest
0 голосов
/ 05 ноября 2018

Моя задача состоит в том, чтобы удовлетворить следующий шаблон Грока:

%{TIMESTAMP_ISO8601:log_time}\s\[%{HOSTNAME:hostname}\]\[%{DATA:jvm.name}\]\[%{WORD:loglevel}\]\[%{DATA: app.name}\]\[(%{DATA:user.name})?\](\[Request-Id:%{DATA:Request-Id}\])?%{GREEDYDATA:message}

Я не могу этого сделать из-за обратной косой черты и '{' -s.

Я изменил его в следующем logback.xml:

<configuration> <appender name="SYSLOG" class="ch.qos.logback.classic.net.SyslogAppender">
    <layout class="ch.qos.logback.classic.PatternLayout">
        <Pattern>
            %TIMESTAMP_ISO8601:log_time [%HOSTNAME:hostname] [%DATA:jvm.name] [%WORD:loglevel][%DATA: app.name][(%DATA:user.name)?]([Request-Id:%DATA:Request-Id])?%GREEDYDATA:message
        </Pattern>
    </layout>
</appender>

<logger name="com.mkyong.web" level="info"
    additivity="false">
    <appender-ref ref="SYSLOG" />
</logger>

<root level="info">
    <appender-ref ref="SYSLOG" />
</root>

Теперь у меня есть следующее исключение:

18:13:43,689 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - There is no conversion class registered for conversion word [TIMESTAMP_ISO8601]18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - [TIMESTAMP_ISO8601] is not a valid conversion word
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - There is no conversion class registered for conversion word [HOSTNAME]
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - [HOSTNAME] is not a valid conversion word
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - There is no conversion class registered for conversion word [DATA]
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - [DATA] is not a valid conversion word
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - There is no conversion class registered for conversion word [WORD]
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - [WORD] is not a valid conversion word
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - There is no conversion class registered for conversion word [DATA]
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - [DATA] is not a valid conversion word
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - There is no conversion class registered for conversion word [DATA]
    18:13:43,690 |-ERROR in ch.qos.logback.core.pattern.parser.Compiler@6dde5c8c - [DATA] is not a valid conversion word

В чем может быть проблема, я опробовал почти каждую комбинацию, но не могу удовлетворить эту схему.

Я использую его с Spring boot 2.0.5

...