How do I enable log rotation for log files e.g. access.log.
Is this built in ?
Docs only say "This allows the logs to be rotated and processed by an external program, such as logrotate"
How do I enable log rotation for log files e.g. access.log.
Is this built in ?
Docs only say "This allows the logs to be rotated and processed by an external program, such as logrotate"
Log Rotation
Traefik will close and reopen its log files, assuming they're configured, on receipt of a
USR1
signal. This allows the logs to be rotated and processed by an external program, such aslogrotate
.
https://docs.traefik.io/v1.6/configuration/logs/#log-rotation
If you are running Traefik in a Docker container then you can do something like this:
Check that logrotate is installed
logrotate --version
Create file in /etc/logrotate.d/
vi /etc/logrotate.d/traefik
Put the following script, do not forget to fill with the container name.
/var/log/traefik/*.log {
size 10M
rotate 5
missingok
notifempty
postrotate
docker kill --signal="USR1" <container-name>
endscript
}
Run!
logrotate /etc/logrotate.conf --debug
logrotate /etc/logrotate.conf
It seems like theres no logrotation built-in so i enabled logration on the Host that the access.log is mounted to.
My logrotate-config for traefik 1.7.4 running in a container with volume mount to "/opt/traefik/logs":
/opt/traefik/logs/*.log {
daily
rotate 30
missingok
notifempty
compress
dateext
dateformat .%Y-%m-%d
create 0644 root root
postrotate
docker kill --signal="USR1" $(docker ps | grep traefik | awk '{print $1}')
endscript
}