Я хочу получать информацию о том, что в приложении Grails 2.2.4 происходят неперехваченные исключения. Log4j имеет SMTPAppender, который делает что-то подобное, но только на основе определенного уровня журнала. В моем приложении на всех доступных уровнях журналов уже много записей журнала, поэтому отправка электронной почты по ERROR или FATAL на самом деле не является вариантом, поскольку она также будет содержать записи без исключений.Пользовательский уровень регистрации в Grails
Фильтрация неперехваченные исключений в Grails довольно легко, я просто перенаправить их к определенному контроллеру и обработать его там:
static mappings = {
[...]
"500"(controller: "errors", action: "serverError")
}
Мой план состоял в том, чтобы представить свой собственный уровень журнала и использовать его только для неперехваченными исключений. Документация предлагает следующее:
final Level EXCEPTION = Level.forName("EXCEPTION", 50);
logger.log(EXCEPTION, "uncaught exception", e);
Но я не знаю, как использовать это в Grails с нагнетаемой log
объекта. Он поддерживает только базовые параметры, такие как log.error('foo',e)
. Документация Grails говорит о том, как добавлять пользовательские приложения, но ничего о пользовательских уровнях (или мне это не хватало ?!)
Любые предложения?
благодаря Берт, я думаю, что я испортил мой импорт и не последовательно использовать log4j. Сейчас он работает как шарм – moeTi