[
https://issues.apache.org/jira/browse/ARTEMIS-4531?focusedWorklogId=896538&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-896538
]
ASF GitHub Bot logged work on ARTEMIS-4531:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 20/Dec/23 15:20
Start Date: 20/Dec/23 15:20
Worklog Time Spent: 10m
Work Description: geertschuring commented on PR #4718:
URL:
https://github.com/apache/activemq-artemis/pull/4718#issuecomment-1864656817
@gemmellr, @jbertram After some more digging around it turns out the date in
the filePattern (log/artemis.log.%d{yyyy-MM-dd}) keeps the
DefaultRolloverStrategy from cleaning up old log files. To enable it to work
the filePattern would need to be changed as well to something like
(log/artemis.log.%i)
I already changed my mind after reading your previous comments, but now I'm
sure it would be better to delete this PR and close the Issue without
implementing it.
Issue Time Tracking
-------------------
Worklog Id: (was: 896538)
Time Spent: 40m (was: 0.5h)
> 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: 40m
> 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)