Можно ли настроить log4j для создания нового файла при каждом запуске приложения? - PullRequest
16 голосов
/ 18 сентября 2009

Например, при первом запуске приложения (или сразу после очистки каталога / logs) я хочу, чтобы log4j записывал журналы приложения в файл с именем log.0. Затем я выхожу из приложения и перезапускаю его, я хочу, чтобы логи были записаны в log.1. И так далее.

Я хотел бы сохранить это в файле конфигурации, хотя, если я не могу, думаю, я всегда мог бы сделать это в своем приложении, когда настроен log4j.

Возможно ли это? Если да, то как?

Ответы [ 4 ]

15 голосов
/ 18 сентября 2009

Может быть, это то, что вы ищете

http://veerasundar.com/blog/2009/08/how-to-create-a-new-log-file-for-each-time-the-application-runs/

** Редактировать: ** У меня есть еще одно решение! Но не знаю, работает ли это или нет, но вы можете попробовать http://www.mail-archive.com/log4cxx-user@logging.apache.org/msg02132.html

4 голосов
/ 22 сентября 2015

Решение с log4j2:

        <RollingFile name="RollingFile" fileName="${log-path}/GScraper.log"
                 filePattern="${log-path}/GScraper_%d{yyyy-MM-dd}_%i.log">
        <ThresholdFilter level="WARN" onMatch="ACCEPT" onMismatch="DENY"/>
        <PatternLayout>
            <pattern>%level\t%d{yyyy-MM-dd HH:mm:ss} %c: %m%n</pattern>
        </PatternLayout>
        <Policies>
            <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
            <SizeBasedTriggeringPolicy size="32 MB" />
            <OnStartupTriggeringPolicy/>
        </Policies>
    </RollingFile>

Примечание OnStartupTriggeringPolicy и % i в filePattern . Таким образом, Log4j будет создавать новый файл журнала с индексом при каждом запуске приложения.

1 голос
/ 19 сентября 2009
0 голосов
/ 18 сентября 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...