From 9b479f9c050957fbdcb8465540f71180d1ea5d33 Mon Sep 17 00:00:00 2001 From: Jeremy Lecour Date: Thu, 30 Sep 2021 12:07:02 +0200 Subject: [PATCH] evolinux-base: logs are rotated with dateext by default --- CHANGELOG.md | 1 + evolinux-base/defaults/main.yml | 2 ++ .../files/logs/logrotate.disabled/procmail | 4 --- evolinux-base/tasks/logs.yml | 25 ++++++++++++++++++- evolinux-base/templates/logs/zsyslog.j2 | 5 ++++ 5 files changed, 32 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e61b8add..189019f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -59,6 +59,7 @@ The **patch** part changes is incremented if multiple releases happen the same m * evolinux-base: force Debian version to buster for Evolix repository (temporary) * evolinux-base: split dpkg logrotate configuration * evolinux-base: install freeipmi by default on dedicated hw +* evolinux-base: logs are rotated with dateext by default * kibana: 7.x by default * listupgrade: upstream release 21.06.3 * logstash: elastic_stack_version = 7.x diff --git a/evolinux-base/defaults/main.yml b/evolinux-base/defaults/main.yml index 26f6e4c8..05830845 100644 --- a/evolinux-base/defaults/main.yml +++ b/evolinux-base/defaults/main.yml @@ -164,8 +164,10 @@ evolinux_logs_include: True evolinux_logs_logrotate_confs: True evolinux_logs_default_rotate: True +evolinux_logs_default_dateext : True evolinux_logs_disable_logrotate_rsyslog: True evolinux_logs_rsyslog_conf: True +evolinux_logrotate_dateformat: "-%Y%m%d%H" # default www diff --git a/evolinux-base/files/logs/logrotate.disabled/procmail b/evolinux-base/files/logs/logrotate.disabled/procmail index d42323f1..29dd2d7a 100644 --- a/evolinux-base/files/logs/logrotate.disabled/procmail +++ b/evolinux-base/files/logs/logrotate.disabled/procmail @@ -1,11 +1,7 @@ /var/log/procmail.log { daily rotate 365 - dateext - dateyesterday - dateformat .%Y%m%d missingok - rotate 365 create 640 root adm } diff --git a/evolinux-base/tasks/logs.yml b/evolinux-base/tasks/logs.yml index 2bf28b98..8298486e 100644 --- a/evolinux-base/tasks/logs.yml +++ b/evolinux-base/tasks/logs.yml @@ -30,11 +30,34 @@ dest: /etc/logrotate.d/zsyslog when: evolinux_logs_logrotate_confs | bool -- name: Configure logrotate.conf +- name: Configure logrotate.conf default rotate value replace: dest: /etc/logrotate.conf regexp: "rotate [0-9]+" replace: "rotate 12" when: evolinux_logs_default_rotate | bool +- name: Enable logrotate.conf dateext option + lineinfile: + dest: /etc/logrotate.conf + line: "dateext" + regexp: "^#?\\s*dateext" + when: evolinux_logs_default_dateext | bool + +- name: Enable logrotate.conf dateformat option + lineinfile: + dest: /etc/logrotate.conf + line: "dateformat {{ evolinux_logrotate_dateformat | mandatory }}" + regexp: "^#?\\s*dateformat.*" + insertafter: 'dateext' + when: evolinux_logs_default_dateext | bool + +- name: Disable logrotate.conf dateyesterday option + lineinfile: + dest: /etc/logrotate.conf + line: "# dateyesterday" + regexp: "^\\s*dateyesterday" + insertafter: 'dateext' + when: evolinux_logs_default_dateext | bool + - meta: flush_handlers diff --git a/evolinux-base/templates/logs/zsyslog.j2 b/evolinux-base/templates/logs/zsyslog.j2 index 2fc2bd1a..cb6d931e 100644 --- a/evolinux-base/templates/logs/zsyslog.j2 +++ b/evolinux-base/templates/logs/zsyslog.j2 @@ -1,8 +1,13 @@ # Custom EvoLinux create 640 root adm +{% if not evolinux_logs_default_dateext %} +# BEGIN legacy setting +# … when global dateext and dateformat are not enabled dateext dateyesterday dateformat .%Y%m%d +# END legacy setting +{% endif %} missingok notifempty delaycompress