Может ли Elasticsearch выполнить горячую перезагрузку log4j2.properties?

#elasticsearch #log4j2

#java #elasticsearch #log4j2

Вопрос:

У меня есть производственный elasticsearch, используемый log4j, который уязвим

 ./lib/log4j-api-2.11.1.jar
./lib/log4j-core-2.11.1.jar
 

поскольку это производственная среда, я не хочу ее перезагружать, я видел, как кто-то сказал, что может выполнить горячую перезагрузку следующим образом

  you can still mitigate it in those cases by replacing %m, %msg, and %message in log4j2.xml with %m{nolookups} instead
 

В моем случае он использует log4j2.properties, есть одна строка, как показано ниже

 appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n
 

измените ли эту строку, как показано ниже

 appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m{nolookups}%n
 

и это может вступить в силу автоматически без необходимости явной перезагрузки?

Комментарии:

1. Я так не думаю, вам нужно будет перезапустить службу, кроме того, для устранения уязвимости Log4Shell рекомендуется использовать .options файл с конфигурацией -Dlog4j2.formatMsgNoLookups=true . Подробнее об этом можно прочитать в этом объявлении о безопасности .

Ответ №1:

В Log4j2 нет средства просмотра файлов, которое позволяет выполнять горячую загрузку конфигураций по умолчанию. Вы все равно должны перезапустить свой сервер, чтобы применить новый шаблон.