Что не так с этим шаблоном журнала?

Я использую этот шаблон:

   <pattern>%d{HH:mm:ss.SSS} %-5level %logger{36} - (%file:%line) - %msg%n</pattern>

Однако результат выглядит следующим образом:

09: 42: 25.811 WARN a.a.an.dao.api.ANApi - (ANApi.java:153

Образец выглядит усеченным после строки% (это также происходит, если я использую% L) - что я делаю неправильно?

Мне нужен этот конкретный шаблон, чтобы консоль Eclipse распознала его.

Ответ 1

( и ) имеют особое значение, как описано на веб-сайте logback:

В PatternLayout скобки могут использоваться для группировки шаблонов преобразования. Из этого следует, что '(' и ')' имеют особый смысл и должны быть экранированы, если они предназначены для использования в качестве литералов. Дополнительный характер скобок поясняется ниже.

В вашем случае вам нужно удалить их с помощью обратной косой черты:

<pattern>%d{HH:mm:ss.SSS} %-5level %logger{36} - \(%file:%line\) - %msg%n</pattern>