Lokirotaatio¶
Ehdotus ja suunnitelma Koha-Suomi lokien rotaatiosta kommentointia varten
Lokirotaatio tapahtuu päivittäin ja lokit kompressoidaan päivän viiveellä siten, että edellisen päivän loki on aina lokihakemistossa kompressoimattomassa muodossa, sitä vanhemmat taas säilytetään pakattuna (gzip) levytilankäytön minimoimiseksi. Päivittäinen rotaatio synnyttää suuren määrän lokitiedostoja, mutta toisaalta tiedostot pysyvät pieninä ja niiden käsittely ja seulonta on helppoa ja nopeaa.
On varmasti vielä syytä pohtia, onko päivittäinen rotaatio tarpeen kaikkien lokitiedostojen osalta, vai riittäisikö harvempi käsittely. Myös säilytysaikoja olisi tarpeen miettiä ja saada niistä aikaiseksi kaikkia Koha-Suomi kirjastoja koskeva yhtenäinen käytäntö. Tässä dokumentissa olevat rotaatioskriptin pätkät ovat täällä lähinnä kommentointia ja pohdiskelua varten. Niissä voi olla bugeja, eivätkä ne välttämättä ihan oikopäätä toimi suunnitellusti.
Lokitiedostojen anonymisointi ja säilytys tapahtuu seuraavasti:
- Plackin, RESTin ja Ceepoksen lokeja säilytetään puoli vuotta (183 vuorokautta). Plackin lokissa olevat asiakastiedot anonymisoidaan kahden kuukauden (62 päivää) kuluttua.
__LOG_DIR__/plack.log __LOG_DIR__/plack-error.log __LOG_DIR__/rest.log __LOG_DIR__/cpu_pos.log { daily missingok rotate 183 compress delaycompress notifempty create 660 www-data koha sharedscripts prerotate if test -e __LOG_DIR__/plack.log.62.gz; then \ cat __LOG_DIR__/plack.log.62.gz | gunzip | perl -pe 's/[0-9.:abcdef]*/***/;s/(borrowernumber=)[0-9]*/\1***/g' | gzip > __LOG_DIR__/plack.log.anon; \ mv __LOG_DIR__/plack.log.anon __LOG_DIR__/plack.log.62.gz; \ fi endscript postrotate /etc/init.d/koha-plack-daemon restart endscript }
- SIPin lokeja säilytetään vuosi (365 päivää). SIP-lokeista poistetaan asiakkaiden nimi-, osoite- ym. tiedot seuraavana päivänä, mutta korttinumero jätetään lokeihin ongelmien selvittelyä varten. Korttinumerot poistetaan lokista puolen vuoden (183 vrk) kuluttua.
https://github.com/KohaSuomi/Koha/blob/master/etc/logrotate.d/koha#L22-L38
- Zebran lokeja säilytetään kaksi viikkoa (14 vrk).
https://github.com/KohaSuomi/Koha/blob/master/etc/logrotate.d/koha#L40-L55
- Cronjobien ja EDItX:n lokeja säilytetään puoli vuotta (183 vrk).
__LOG_DIR__/cronjobs/*.log __LOG_DIR__/editx/*.log { daily missingok rotate 183 compress delaycompress notifempty create 640 koha koha }
- Kohan intranetin ja OPAC:in virhelokeja säilytetään puoli vuotta (183 vrk). Voi ehkä olla liioittelua?
__LOG_DIR__/intranet-error.log __LOG_DIR__/opac-error.log { daily missingok rotate 183 compress delaycompress notifempty create 660 www-data koha }
- Apachen Koha-lokeja säilytetään puoli vuotta (183 vrk). Voi ehkä olla liioittelua?
__LOG_DIR__/koha-opac-error_log __LOG_DIR__/koha-error_log { daily missingok rotate 183 compress delaycompress notifempty create 660 www-data koha sharedscripts postrotate /usr/sbin/apachectl reload endscript }
Pääkäyttäjät käyneet läpi ehdotusta ja pohdinnat löytyy tiketistä #4233.