[
https://issues.apache.org/jira/browse/ARTEMIS-4531?focusedWorklogId=896330&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-896330
]
ASF GitHub Bot logged work on ARTEMIS-4531:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 19/Dec/23 16:47
Start Date: 19/Dec/23 16:47
Worklog Time Spent: 10m
Work Description: gemmellr commented on PR #4718:
URL:
https://github.com/apache/activemq-artemis/pull/4718#issuecomment-1863123972
This seems likely to surprise some folks using the existing default
behaviour that has been there for...ages. I dont know how long, before my time.
If it was decided to do a change like this by default, I'd wonder if it
shouldn't be held for e.g the next major version.
There is no perfect choice here. 5 days actually wont be _enough_ logs for
some folks, who currently get more out the box. It will also still be _too
much_ for some others, since its a varying amount depending in large part on
broker activity. Essentially the config file is created as a base, people
really should be configuring it based on their own specific expected env and
usage. Though many wont bother.
Issue Time Tracking
-------------------
Worklog Id: (was: 896330)
Time Spent: 20m (was: 10m)
> 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: 20m
> 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)