В моем приложении пользовательский интерфейс Python, фоновый сервис на Java. Когда я загружаю файл, содержащий настройки журнала, я хочу установить настройки журнала (такие поля, как LogLevel, MaxRollFileCount и т. Д.) В Log4J (файл XML) из кода Python.
Я пытался найти какой-то метод для этого, но я нахожу решение, которое может обновить log4python из кода Python и log4j из кода Java. однако, не мог заметить, установив log4j из python.
Здесь я упоминаю формат log4j, который у меня есть. Можем ли мы обновить этот log4j из кода Python?
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="ProcessFileAppender" class="org.apache.log4j.appender.TimeAndSizeRollingAppender">
<param name="File" value="${ServiceLogFilepath}"/>
<param name="DatePattern" value=".yyyy-MM-dd"/>
<param name="MaxFileSize" value="100MB"/>
<param name="MaxRollFileCount" value="30"/>
<param name="BufferedIO" value="false"/>
<param name="ScavengeInterval" value="1000"/>
<param name="CompressionAlgorithm" value="ZIP"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%p\t%d{ISO8601}\t%t\t%m%n" />
</layout>
</appender>
<logger name="ProcessLogger">
<level value="DEBUG" />
<appender-ref ref="ProcessFileAppender"/>
</logger>
</log4j:configuration>
Исходя из источника ниже, кажется, что из python должно быть возможно обновить log4j. хотя я не мог легко понять, если этот источник предоставляет решение.
https://wiki.python.org/jython/Log4jExample