У меня есть несколько приложений, использующих log4j для ведения журналов, каждое из которых загружает настройки из отдельных log4j.properties, загружаемых из пути к классам (просто файл на диске, а не файл .jar или что-либо, что делает его доступным только для чтения). В каждом из этих приложений я хочу разрешить обновление уровня журнала через обычный пользовательский интерфейс.
Я использую для этого общий служебный класс, который используется совместно приложениями. Я могу сделать это в течение всего срока службы приложения, но поскольку изменения не сохраняются, вернитесь в соответствующий файл log4j.properties, при следующем перезапуске он сбрасывается до определенного уровня в файле свойств.
Поскольку он только что загружен из пути к классам, я не знаю полного пути к файлу журнала в каждом приложении, и, поскольку это общий класс, я бы предпочел не использовать жесткие пути. Есть ли способ заставить log4j записать свои изменения в конфигурацию на диске?