Я настроил log4j SMTPAppender для отправки мне электронных сообщений об ошибках. Это работает, но у меня есть проблема с данными не ASCII. Конфигурация использует HTMLLayout и их состояния документации:
Для кодировщиков, использующих этот макет, должна быть установлена кодировка UTF-8 или UTF-16, в противном случае события, содержащие символы не ASCII, могут привести к повреждению файлов журнала.
Мои файлы журналов должны содержать данные UTF-8, но я не могу найти, где я могу установить кодировку для appender. Вот конфигурация аппендера:
<appender name="MAIL" class="org.apache.log4j.net.SMTPAppender">
<param name="BufferSize" value="25" />
<param name="SMTPHost" value="localhost" />
<param name="From" value="myapp@...com" />
<param name="Threshold" value="error" />
<param name="To" value="me@gmail.com" />
<param name="Subject" value="Error Occurred" />
<param name="LocationInfo" value="true"/>
<param name="encoding" value="UTF-8" />
<!-- <param name="Encoding" value="UTF-8"/> -->
<layout class="org.apache.log4j.HTMLLayout">
</layout>
</appender>
При запуске приложения я получил:
log4j: WARN Нет такого свойства [кодировка] в org.apache.log4j.net.SMTPAppender