Project

General

Profile

Actions

User story #6384

open

Clean log rotation & compression letting Java alone

Added by François ARMAND over 9 years ago. Updated 2 months ago.

Status:
New
Priority:
N/A
Assignee:
-
Category:
System integration
UX impact:
Suggestion strength:
User visibility:
Effort required:
Name check:
Fix check:
Regression:

Description

Even with trying (and again, and again), Java application are NOT good citizen regarding logs rotation with logrotate.

In particular, we generally end up with one of the following cases:

- no rotation at all - obviously bad,
- rotation with bad file handler update for the java app (still writing in the rotated file)
- rotation and compression (i.e, compressed only after the second rotation) with lost logs

So, we have to just assume Java application are broken and manage two rotation cases, even if it means having two place where log rotation/compression is done:

- Java application are fully managed via logbac (/opt/rudder/etc/logback.xml)
- all other applications, manage by logrotate (/etc/logrotate.d/rudder)

We will have to remove the cfengine configuration that zip logs that was defined in http://www.rudder-project.org/redmine/issues/3916

That will also be the case to cleanly redefined the rudder logs and there meaning, with the proposed scheme, with [LR] meaning logrorate config, [J] meaning Java logback config

- [LR] /var/log/rudder/apache2/{access.log, error.log}: apache logs related to Rudder (webdav, proxy, etc)
- [LR] /var/log/rudder/ldap/slapd.log : slapd logs (yeah, not too original :)
- [J] /var/log/rudder/compliance/non-compliant-reports.log : result_error and result_repaired logs
- [J] /var/log/rudder/node-configurations/ : this is debugging logs with node configurations (the named must be updated from nodeConfigurations)
- [LR] /var/log/rudder/reports/all.log : agents logs
- [J] /var/log/rudder/jetty/{yyyy_mm_dd.stdout.log, yyyy_mm_dd.stderr.log} : jetty logs (starting, exception outside Rudder, etc)
- [J] /var/log/rudder/webapp/yyyy_mm_dd.rudder.log : rudder logs

And for these ones:

- /var/log/rudder/install/rudder-agent.log: agent post installation information, especially about linkage. Not sure we want to keep it.
- /var/log/rudder/core/rudder-webapp.log: webapp logs. It's actually a duplicate of /var/log/rudder/webapp/yyyy_mm_dd.strout.log and should be removed.

This is an important change, since people are certainly relying on logs to daily manage Rudder, and we will do it only in next major version.


Related issues 4 (0 open4 closed)

Related to Rudder - Bug #6381: File /var/log/rudder/{compliance/non-compliant-reports.log, core/rudder-webapp.log} are not correctly rotatedReleasedNicolas CHARLES2015-03-11Actions
Related to Rudder - User story #6400: Harmonize the logrotate files in the Techniques/Initial promisesResolvedActions
Related to Rudder - Bug #4433: Log rotation problems due to bad post-rotate scriptRejectedBenoît PECCATTE2014-01-31Actions
Related to Rudder - User story #6719: Suppress webapp logs after some timeRejectedFrançois ARMANDActions
Actions

Also available in: Atom PDF