Настройка Log4j для фильтрации PatternLayout
Я только начал мигрировать в WLS 10.x и заметил, что имя потока [%t
] для WL довольно многословно и более информативно, чем мне нужно для моих потребностей в развертывании.
В конечном счете, я забочусь только об идентификаторе потока, но WL дает мне следующее:<
[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'
~
Кто-нибудь знает, есть ли способ в log4j написать собственный фильтр, который позволит мне переопределить PatternLayout
поэтому я могу проанализировать имя потока WLS, чтобы просто вывести идентификатор потока, который в данном случае равен 0? Я бы предпочел расширить, а затем настроить, так как это значительно упрощает обновление библиотек.
1 ответ
Вы хотите написать свое собственное конверсионное слово. В logback вы можете сделать это в течение нескольких минут. Смотрите раздел о пользовательских спецификаторах преобразования.
Если вы действительно ленивы и не можете написать собственное конверсионное слово, просто скажите существующему элементу throwable, чтобы обрезать имя потока до 26 символов. Шаблон будет "%.-26thread". Я выбрал 26, потому что это длина "[ACTIVE] ExecuteThread: '0'".