LOG4J: изменить зарегистрированное сообщение с помощью специального приложения

Из соображений безопасности мне нужно просмотреть каждое зарегистрированное сообщение в моем приложении и, возможно, изменить его, прежде чем оно перейдет в файл журнала. Я подумал, что мог бы написать собственный appender (расширяющий DailyRollingFileAppender) и переопределить subAppend (событие LoggingEvent). Проблема в том, что в LoggingEvent нет установщика для текста сообщения, и сообщение является личным атрибутом. Я мог бы создать новое LoggingEvent с моим измененным сообщением, но API не позволяет легко скопировать оставшуюся часть исходного LoggingEvent. Кажется, все это разработано, чтобы препятствовать вмешательству в сообщение в пользовательском приложении.

Единственный другой вариант, который я вижу, - это модифицировать сотни операторов ведения журнала, чтобы вызывать новый глобальный метод, который может сначала изменить текст, а затем выполнить вызов Log4J. Я бы не!

У кого-нибудь еще была необходимость изменить зарегистрированное сообщение в пользовательском приложении?

Ответы на вопрос(4)

Ваш ответ на вопрос