logrotate

ansible-role-logrotate

Установка logrotate

Требования

Нет

Переменные роли

Переменная Описание По умолчанию
logrotate_config путь к logrotate.conf {{ __logrotate_config }}
logrotate_conf_d путь к logrotate.d {{ __logrotate_conf_d }}
logrotate_default_rotate значение по умолчанию для rotate в logrotate.conf 30
logrotate_default_dateext значение по умолчанию для dateformat в logrotate.conf true
logrotate_default_dateformat значение по умолчанию для dateformat в logrotate.conf .%Y%m%d
logrotate_default_freq значение по умолчанию для частоты поворота логов в logrotate.conf daily
logrotate_default_su значение по умолчанию для su в logrotate.conf {{ __logrotate_default_su }}

Debian

Переменная По умолчанию
__logrotate_config /etc/logrotate.conf
__logrotate_conf_d /etc/logrotate.d
__logrotate_default_su root syslog

FreeBSD

Переменная По умолчанию
__logrotate_config /usr/local/etc/logrotate.conf
__logrotate_conf_d /usr/local/etc/logrotate.d
__logrotate_default_su root wheel

RedHat

Переменная По умолчанию
__logrotate_config /etc/logrotate.conf
__logrotate_conf_d /etc/logrotate.d
__logrotate_default_su root root

модуль logrotate

action_plugins/logrotate.py позволяет создавать задачи, подобные этой.

- name: Поворот logstash.log
  logrotate:
    name: logstash
    files:
      - /var/log/logstash.log
    delaycompress: yes
    compress: yes
    state: present
    frequency: daily

Зависимости

Нет

Пример playbook

Следующий yaml создает конфигурации для стандартного Ubuntu.

- hosts: localhost
  roles:
    - ansible-role-logrotate
  post_tasks:

    - name: Повернуть wtmp
      logrotate:
        name: wtmp
        files:
          - /var/log/wtmp
        frequency: monthly
        missingok: yes
        create: 0664 root utmp
        rotate: 1
        su: root syslog
        state: present

    - name: Повернуть btmp
      logrotate:
        name: btmp
        files:
          - /var/log/btmp
        missingok: yes
        frequency: monthly
        create: 0660 root utmp
        rotate: 1
        su: root syslog
        state: present

    - name: Повернуть apt
      logrotate:
        name: apt
        files:
          - /var/log/apt/term.log
          - /var/log/apt/history.log
        rotate: 12
        frequency: monthly
        compress: yes
        missingok: yes
        notifempty: yes
        state: present

    - name: Повернуть dpkg
      logrotate: 
        name: dpkg
        files:
          - /var/log/dpkg.log
          - /var/log/alternatives.log
        frequency: monthly
        rotate: 12
        compress: yes
        delaycompress: yes
        missingok: yes
        notifempty: yes
        create: 644 root root
        su: root syslog
        state: present

    - name: Создать rsyslog
      logrotate:
        name: rsyslog
        files:
          - /var/log/syslog
        rotate: 7
        frequency: daily
        missingok: yes
        notifempty: yes
        delaycompress: yes
        compress: yes
        su: root syslog
        sharedscripts: no
        postrotate:
          - "reload rsyslog >/dev/null 2>&1 || true"
        state: present
    - name: Повернуть другие логи rsyslog
      logrotate:
        name: rsyslog_others
        files:
          - /var/log/mail.info
          - /var/log/mail.warn
          - /var/log/mail.err
          - /var/log/mail.log
          - /var/log/daemon.log
          - /var/log/kern.log
          - /var/log/auth.log
          - /var/log/user.log
          - /var/log/lpr.log
          - /var/log/cron.log
          - /var/log/debug
          - /var/log/messages
        rotate: 4
        frequency: weekly
        missingok: yes
        notifempty: yes
        compress: yes
        delaycompress: yes
        su: root syslog
        sharedscripts: yes
        postrotate:
          - "reload rsyslog >/dev/null 2>&1 || true"
        state: present

    - name: Повернуть unattended-upgrades-shutdown.log
      logrotate:
        name: unattended-upgrades
        files:
          - /var/log/unattended-upgrades/unattended-upgrades.log
          - /var/log/unattended-upgrades/unattended-upgrades-shutdown.log
        rotate: 6
        frequency: monthly
        compress: yes
        missingok: yes
        notifempty: yes
        state: present

    - name: Повернуть upstart
      logrotate:
        name: upstart
        files:
          - /var/log/upstart/*.log
        frequency: daily
        missingok: yes
        rotate: 7
        compress: yes
        notifempty: yes
        nocreate: yes
        state: present

  vars:

Лицензия

Авторское право (c) 2016 Tomoyuki Sakurai <[email protected]>

Разрешение на использование, копирование, модификацию и распространение этого программного обеспечения для любых
целей, с оплатой или без, предоставляется при условии, что приведенное выше
авторское право и это разрешение присутствуют во всех копиях.

ЭТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ "КАК ЕСТЬ", И АВТОР ОТКАЗЫВАЕТСЯ ОТ ВСЕХ ГАРАНТИЙ
В ОТНОШЕНИИ ЭТОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ВКЛЮЧАЯ ВСЕ ПОДРАЗУМЕВАЕМЫЕ ГАРАНТИИ ТОРГОВЛИ И ПРИГОДНОСТИ. НИ В КОЕМ СЛУЧАЕ АВТОР НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ ЗА
ЛЮБЫЕ ОСОБЫЕ, ПРЯМЫЕ, КОСВЕННЫЕ ИЛИ КОНСЕКВЕНТНЫЕ УБЫТКИ ИЛИ ЛЮБЫЕ УБЫТКИ,
ВОЗНИКАЮЩИЕ В РЕЗУЛЬТАТЕ УТЕРИ ИСПОЛЬЗОВАНИЯ, ДАННЫХ ИЛИ ПРИБЫЛИ, БУДЬ ТО В
РЕЗУЛЬТАТЕ ДОГОВОРА, НЕДОБРОСОВЕСТНОСТИ ИЛИ ДРУГОГО ДЕЙСТВИЯ, ВОЗНИКАЮЩЕГО ИЗ
ИЛИ В СВЯЗИ С ИСПОЛЬЗОВАНИЕМ ИЛИ РАБОТОЙ ЭТОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

Информация об авторе

Tomoyuki Sakurai tomoyukis@reallyenglish.com

О проекте

Configures logrotate

Установить
ansible-galaxy install reallyenglish/ansible-role-logrotate
Лицензия
isc
Загрузки
3426
Владелец