diff --git a/logstash/defaults/main.yml b/logstash/defaults/main.yml index 2d3c7b40..e563f517 100644 --- a/logstash/defaults/main.yml +++ b/logstash/defaults/main.yml @@ -1,3 +1,4 @@ --- logstash_jvm_xms: 256m logstash_jvm_xmx: 1g +logstash_log_rotate_days: 365 diff --git a/logstash/tasks/logs.yml b/logstash/tasks/logs.yml new file mode 100644 index 00000000..9d5b5023 --- /dev/null +++ b/logstash/tasks/logs.yml @@ -0,0 +1,9 @@ +--- + +- name: "log rotation script" + template: + src: rotate_logstash_logs.j2 + dest: /etc/cron.daily/rotate_logstash_logs + owner: root + group: root + mode: "0750" diff --git a/logstash/tasks/main.yml b/logstash/tasks/main.yml index 67d9e375..71be5614 100644 --- a/logstash/tasks/main.yml +++ b/logstash/tasks/main.yml @@ -70,3 +70,5 @@ - debug: var: logstash_template verbosity: 1 + +- include: logs.yml diff --git a/logstash/templates/rotate_logstash_logs.j2 b/logstash/templates/rotate_logstash_logs.j2 new file mode 100644 index 00000000..40155506 --- /dev/null +++ b/logstash/templates/rotate_logstash_logs.j2 @@ -0,0 +1,9 @@ +#!/bin/sh +# {{ ansible_managed }} + +LOG_DIR=/var/log/logstash +MAX_AGE={{ logstash_log_rotate_days | mandatory }} + +find ${LOG_DIR} -type f -user logstash -name "logstash.log.*.gz" -mtime +${MAX_AGE} -delete +find ${LOG_DIR} -type f -user root -name "logstash.err.*.gz" -mtime +${MAX_AGE} -delete +find ${LOG_DIR} -type f -user root -name "logstash.stdout.*.gz" -mtime +${MAX_AGE} -delete