Получить последние 500 зарегистрированных сообщений - PullRequest
2 голосов
/ 22 апреля 2011

Мы используем комбинацию SLF4J / Logback для нашей регистрации.Одно из требований, которое у нас есть, - если что-то не получается, отправьте электронное письмо в группу поддержки / разработки с последними 500 зарегистрированными сообщениями.

Я пытался просмотреть документацию, но не нашел ничего подходящего.

Один из подходов, который я могу себе представить, - получить текущее имя файла журнала, прочитать файл и отправить последние 500 записей.Но я не знаю, как получить текущее имя файла журнала.кто-нибудь знает как?или какой-либо другой лучший способ получить журнал?

Спасибо

Ответы [ 2 ]

3 голосов
/ 22 апреля 2011

Звучит так, будто в Log4j SMTPAppender есть нужные вам функции.Вы можете посмотреть на его исходный код как на модель для руководства своей собственной реализацией, если в Logback отсутствует подобный аппендер (что было бы несколько удивительно).

По сути, у этого апплета электронной почты есть кольцевой буфер событий журнала.Когда происходит инициирующее событие (по умолчанию событие на уровне ОШИБКИ или хуже), буфер сбрасывается в электронное письмо и отправляется.

0 голосов
/ 22 апреля 2011

Создайте пользовательский Appender, который будет кэшировать последние 500 сообщений журнала. Вы можете расширить SMTPAppender , чтобы снимать электронные письма, читая содержимое этого кэша.

начало здесь

...