|
@ -0,0 +1,44 @@ |
|
|
|
|
|
#!/bin/bash |
|
|
|
|
|
|
|
|
|
|
|
## Should be executable N time in a row with same result. |
|
|
|
|
|
|
|
|
|
|
|
. lib/common |
|
|
|
|
|
|
|
|
|
|
|
set -e |
|
|
|
|
|
|
|
|
|
|
|
LOGS=/var/log |
|
|
|
|
|
|
|
|
|
|
|
rotated_count=$(relation-get rotated-count 2>/dev/null) || true |
|
|
|
|
|
rotated_count=${rotated_count:-52} |
|
|
|
|
|
|
|
|
|
|
|
## No postrotate script as odoo uses a WatchedFileHandler log that |
|
|
|
|
|
## close and reopen log file if it changes. |
|
|
|
|
|
|
|
|
|
|
|
## XXXvlab: a lot of this intelligence should be moved away into ``logrotate`` charm |
|
|
|
|
|
DST="$CONFIGSTORE/$TARGET_SERVICE_NAME/etc/logrotate.d/$SERVICE_NAME" |
|
|
|
|
|
file_put "$DST" <<EOF |
|
|
|
|
|
/var/log/docker/$SERVICE_NAME/*/*.log |
|
|
|
|
|
{ |
|
|
|
|
|
weekly |
|
|
|
|
|
missingok |
|
|
|
|
|
dateext |
|
|
|
|
|
dateyesterday |
|
|
|
|
|
dateformat _%Y-%m-%d |
|
|
|
|
|
extension .log |
|
|
|
|
|
rotate $rotated_count |
|
|
|
|
|
compress |
|
|
|
|
|
delaycompress |
|
|
|
|
|
notifempty |
|
|
|
|
|
copytruncate ## important |
|
|
|
|
|
sharedscripts |
|
|
|
|
|
} |
|
|
|
|
|
EOF |
|
|
|
|
|
|
|
|
|
|
|
config-add "\ |
|
|
|
|
|
services: |
|
|
|
|
|
$MASTER_TARGET_SERVICE_NAME: |
|
|
|
|
|
volumes: |
|
|
|
|
|
- $DST:/etc/logrotate.d/docker-${SERVICE_NAME}:ro |
|
|
|
|
|
- $SERVICE_DATASTORE$LOGS:/var/log/docker/$SERVICE_NAME:rw |
|
|
|
|
|
|
|
|
|
|
|
" |