[ https://issues.apache.org/jira/browse/ARTEMIS-4531?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Geert Schuring closed ARTEMIS-4531. ----------------------------------- Resolution: Won't Fix Suggested solution does not work as intended, and we don't want to introduce more changes to log file handling in a minor release. > Limit logfile output by default > ------------------------------- > > Key: ARTEMIS-4531 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4531 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Broker > Affects Versions: 2.31.2 > Reporter: Geert Schuring > Priority: Minor > Time Spent: 50m > Remaining Estimate: 0h > > The logging config does not limit the amount of rolled-over logfiles that are > stored, causing a minor resource leak. The system will (eventually) run out > of disk space without manual intervention. > The relevant config in etc/log4j2.properties currently looks like this: > {code:java} > # Log file appender > appender.log_file.type = RollingFile > appender.log_file.name = log_file > appender.log_file.fileName = ${sys:artemis.instance}/log/artemis.log > appender.log_file.filePattern = > ${sys:artemis.instance}/log/artemis.log.%d{yyyy-MM-dd} > appender.log_file.layout.type = PatternLayout > appender.log_file.layout.pattern = %d %-5level [%logger] %msg%n > appender.log_file.policies.type = Policies > appender.log_file.policies.cron.type = CronTriggeringPolicy > appender.log_file.policies.cron.schedule = 0 0 0 * * ? > appender.log_file.policies.cron.evaluateOnStartup = true > # Audit log file appender > appender.audit_log_file.type = RollingFile > appender.audit_log_file.name = audit_log_file > appender.audit_log_file.fileName = ${sys:artemis.instance}/log/audit.log > appender.audit_log_file.filePattern = > ${sys:artemis.instance}/log/audit.log.%d{yyyy-MM-dd} > appender.audit_log_file.layout.type = PatternLayout > appender.audit_log_file.layout.pattern = %d [AUDIT](%t) %msg%n > appender.audit_log_file.policies.type = Policies > appender.audit_log_file.policies.cron.type = CronTriggeringPolicy > appender.audit_log_file.policies.cron.schedule = 0 0 0 * * ? > appender.audit_log_file.policies.cron.evaluateOnStartup = true{code} > This results in a new log file every day if there is any logging output. > These files are never deleted and keep accumulating. > After setting a limit of 5 files it looks like this: > {code:java} > # Log file appender > appender.log_file.type = RollingFile > appender.log_file.name = log_file > appender.log_file.fileName = ${sys:artemis.instance}/log/artemis.log > appender.log_file.filePattern = > ${sys:artemis.instance}/log/artemis.log.%d{yyyy-MM-dd} > appender.log_file.layout.type = PatternLayout > appender.log_file.layout.pattern = %d %-5level [%logger] %msg%n > appender.log_file.policies.type = Policies > appender.log_file.policies.cron.type = CronTriggeringPolicy > appender.log_file.policies.cron.schedule = 0 0 0 * * ? > appender.log_file.policies.cron.evaluateOnStartup = true > appender.log_file.strategy.type = DefaultRolloverStrategy > appender.log_file.strategy.max = 5 > # Audit log file appender > appender.audit_log_file.type = RollingFile > appender.audit_log_file.name = audit_log_file > appender.audit_log_file.fileName = ${sys:artemis.instance}/log/audit.log > appender.audit_log_file.filePattern = > ${sys:artemis.instance}/log/audit.log.%d{yyyy-MM-dd} > appender.audit_log_file.layout.type = PatternLayout > appender.audit_log_file.layout.pattern = %d [AUDIT](%t) %msg%n > appender.audit_log_file.policies.type = Policies > appender.audit_log_file.policies.cron.type = CronTriggeringPolicy > appender.audit_log_file.policies.cron.schedule = 0 0 0 * * ? > appender.audit_log_file.policies.cron.evaluateOnStartup = true > appender.audit_log_file.strategy.type = DefaultRolloverStrategy > appender.audit_log_file.strategy.max = 5 {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)