Bug 27722 - logrotate: Maximalgröße definieren
logrotate: Maximalgröße definieren
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: General
UCS 3.0
Other Linux
: P2 enhancement (vote)
: UCS 3.1
Assigned To: Felix Botner
Philipp Hahn
: interim-1
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-06-22 12:23 CEST by Sönke Schwardt-Krummrich
Modified: 2012-12-12 21:10 CET (History)
2 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sönke Schwardt-Krummrich univentionstaff 2012-06-22 12:23:52 CEST
Das Logrotate unter UCS 3.0 rotiert die Logdateien jetzt per Default wöchentlich.
Bei einigen Mailsystemen kommen da schnell sehr große Logdateien zustande. Es sollte neben "weekly" auch eine "size" angegeben werden, ab der automatisch rotiert wird.
Comment 1 Stefan Gohmann univentionstaff 2012-07-17 17:09:32 CEST
UCS 3.1 will be the next release.
Comment 2 Felix Botner univentionstaff 2012-08-29 10:16:04 CEST
In univention-base-files/debian/univention-base-files.postinst wird nun logrotate/size?100M gesetzt. Das gilt dann für alle UCS Logdateien kann aber mit paketspezifischen logrotate Einstellungen für einzelne Log-Dateien noch überschrieben werden.
Comment 3 Philipp Hahn univentionstaff 2012-09-10 12:50:38 CEST
FAIL: Das funktioniert so nicht, weil "size" und "rotate" nicht gleichzeitig angegeben werden dürfen! <https://bugzilla.redhat.com/show_bug.cgi?id=723570#c2>
  grep criterium config.c

Da /usr/share/pyshared/univention/lib/ucrLogrotate.py ein Python-Hash-Array zurückliefert, die die Reihenfolge der Schlüssel-Werte-Paare zufällig und damit auch die Reihenfolge in den Logrotate-Konfigurationsdateien.

FAIL: Das explizite deaktivieren per "ucr set logrotate/$NAME/size=" funktioniert auch nicht, weil vorher der Standardwert logrotate/size ausgewertet und in das Python-Aray übernommen wird, aber duch den spezifischeren Eintrag nicht gelöscht wird.
Comment 4 Felix Botner univentionstaff 2012-09-10 14:02:37 CEST
(In reply to comment #3)
> FAIL: Das funktioniert so nicht, weil "size" und "rotate" nicht gleichzeitig
> angegeben werden dürfen!
> <https://bugzilla.redhat.com/show_bug.cgi?id=723570#c2>
>   grep criterium config.c
> 
> Da /usr/share/pyshared/univention/lib/ucrLogrotate.py ein Python-Hash-Array
> zurückliefert, die die Reihenfolge der Schlüssel-Werte-Paare zufällig und damit
> auch die Reihenfolge in den Logrotate-Konfigurationsdateien.
> 
> FAIL: Das explizite deaktivieren per "ucr set logrotate/$NAME/size="
> funktioniert auch nicht, weil vorher der Standardwert logrotate/size
> ausgewertet und in das Python-Aray übernommen wird, aber duch den
> spezifischeren Eintrag nicht gelöscht wird.

size wird in ucrLogrotate.py nun nicht mehr abgefragt. Man kann aber in lorotate/rotate neben weekly auch einfach "size 100M" setzten. Da man im logrotate ja nur entweder "size" oder "weekly" definieren kann, schreibt man also einfach in lorotate/rotate das gewünschte Verhalten.

-> ucr get logrotate/rotate
weekly

-> more /etc/logrotate.d/univention-updater
/var/log/univention/updater.log {
        weekly
        rotate 12
        create 640 root adm
        compress
        missingok
        notifempty
}

...

-> ucr set logrotate/updater/rotate='size 100k'

-> more /etc/logrotate.d/univention-updater
/var/log/univention/updater.log {
        size 100k
        rotate 12
        create 640 root adm
        compress
        missingok
        notifempty
}
/var/log/univention/actualise.log {
        weekly
        rotate 12
        ...

Changelog Eintrag habe ich wieder entfernt.
Comment 5 Philipp Hahn univentionstaff 2012-09-10 15:44:51 CEST
Änderungen wurden zurückgenommen, lediglich die UCR-Variablen-Beschreibung wurde angepasst; dafür ist kein ChangeLog-Eintrag notwendig.
OK: UCR-Variablenbeschreibung  svn35477
OK: ChangeLog entfernt svn14694
OK: postinst entfernt svn35424
OK: ucrLogortate.py entfernt svn35423

OK: ucr set logrotate/ssl-sync/rotate=size\ 10k ; logrotate -d /etc/logrotate.d/univention-ssl
Comment 6 Stefan Gohmann univentionstaff 2012-12-12 21:10:37 CET
UCS 3.1-0 has been released: 
 http://forum.univention.de/viewtopic.php?f=54&t=2125

If this error occurs again, please use "Clone This Bug".