0

标准 Unix 守护进程支持信号 HUP 来轮换日志文件。当守护进程收到信号时,它会关闭所有日志文件并重新打开它们。

我在 Java 中有一个使用 Apache Commons Daemon 的守护进程。守护进程实现支持三种方法:init、start 和 stop。但我找不到任何对 Unix 信号的支持。如何支持 HUP 信号轮换日志文件?

4

1 回答 1

1

Apache Commons Daemon 使用 SIGUSR1 为您执行此操作,这会导致进程关闭并重新打开 stderr 和 stdout 文件描述符。

只要您登录到这些流(例如,使用如下的 log4j),您就不必编写任何 java 代码。

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
    <param name="Target" value="System.err" />
    ...
</appender>
于 2014-09-10T09:03:43.490 回答