Перезагрузка шаблона Tomcat AccessLogValve без перезапуска

Можно ли как-то перезагрузить изменения в server.xml без перезапуска Tomcat?

Я хочу внести несколько изменений в свой формат access_log (в org.apache.catalina.valves.AccessLogValve -> pattern='...') на многих серверах, но я не хочу перезапускать свой Tomcat для каждого изменения на сервере .xml. Возможно ли, чтобы Tomcat перезагрузил изменения конфигурации в шаблоне без перезапуска?

(Кот 7.0.29)


person JoeBand1t    schedule 17.04.2013    source источник


Ответы (2)


Боюсь, похоже, что ответ «нет». Согласно Определение контекста в документации Tomcat 7:

НЕ рекомендуется размещать элементы непосредственно в файле server.xml. Это связано с тем, что это делает изменение конфигурации Context более инвазивным, поскольку основной файл conf/server.xml нельзя перезагрузить без перезапуска. Кот.

Там много жирного текста. Наверняка они должны быть серьезными.

person Michael Scheper    schedule 05.06.2013
comment
Можете ли вы разместить Valve где-нибудь еще, кроме server.xml? - person yurez; 12.10.2017
comment
Ага... похоже, Valve можно определить в движке, хосте или контексте. Тот, что находится в server.xml, по умолчанию вложен в хост. tomcat.apache.org/tomcat-7.0-doc/config/valve. html tomcat.apache.org/tomcat-7.0 -doc/config/ - person em_bo; 16.02.2018

Во-первых, я полностью согласен с Майклом Шепером в том, что когда tomcat говорит, что им не нравятся элементы, размещенные непосредственно в server.xml, они имеют в виду именно это. Сказав это, может быть грязный хак, который вы можете попробовать на свой страх и риск. Класс AccessLogValve в tomcat, похоже, имеет общедоступные методы установки для «каталога» и «формата». Забудь, что я когда-либо говорил это.

person The Governor    schedule 05.06.2013