Возврат: выполнить настраиваемое действие в журнале уровня ОШИБКИ

С возвращением в систему я ищу способ выполнять настраиваемое действие каждый раз, когда возникает определенное количество журналов ERROR. Раньше с log4j я мог сделать это, создав подкласс какого-либо базового класса регистратора или реализовав какой-то интерфейс регистратора (я точно не помню). Мне не удалось найти такую ​​же функциональность при поиске логбэка.

Кто-нибудь знает, как это сделать (у меня есть приложение для весенней загрузки)? В основном я хочу захватить строковое сообщение всех журналов ERROR, выполнить поиск определенного текста, а затем подсчитать их, а при достижении порогового значения опубликовать настраиваемую метрику Prometheus.

Просто ищу то, что можно подклассифицировать / реализовать здесь, а не полное решение.

Спасибо


person chrismead    schedule 04.08.2020    source источник


Ответы (1)


Вероятно, много опций в Logback, но расширение приложения работает нормально. Что-то вроде ch.qos.logback.classic.AsyncAppender, реализующего ch.qos.logback.core.spi.AppenderAttachable.

Я сделал это, я не собираюсь публиковать все решение, так как вы этого не хотите, но вы можете посмотреть AsyncAppender, я в основном сделал то же самое:

class MyOwnAppender extends UnsynchronizedAppenderBase<ILoggingEvent> implements AppenderAttachable<ILoggingEvent>

person Shadov    schedule 04.08.2020