User story #6384
openClean log rotation & compression letting Java alone
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.