gabops.logrotate

gabops.logrotate

Statut de construction

Installe et configure logrotate.

Exigences

Aucune.

Variables de rôle

Variable Valeur par défaut Description
logrotate_packages [] Définit la liste des paquets à installer pour installer logrotate. Notez que ce rôle gère déjà les paquets à installer, cependant, cette variable existe pour vous permettre de déclarer votre propre liste de paquets si nécessaire.
logrotate_enable_repo "" Définit le référentiel à activer lors de l'installation des paquets définis dans la variable logrotate_packages. Notez que cette option ne fonctionne que dans les distributions de la famille RedHat.
logrotate_config_global [] Définit la configuration à appliquer sur /etc/logrotate.conf. Notez que si cette variable est vide comme par défaut, le fichier logrotate.conf ne sera pas modifié du tout.
logrotate_config_files [] Définit les configurations logrotate individuelles à appliquer. Voir Notes et Exemple de playbook pour plus d'informations.

Remarques :

  • Toutes les configurations définies dans logrotate_config_files seront appliquées sur le répertoire par défaut /etc/logrotate.d. Ce comportement peut être modifié si dans la variable logrotate_config_global vous déclarez la directive include. Par exemple, si vous définissez :
logrotate_config_global:
  - include
  - weekly
  - rotate 4
  - create
  - dateext
  - include /etc/customdir

Le rôle détectera automatiquement le chemin dans la directive include et utilisera cela au lieu du /etc/logrotate.d par défaut.

  • Toutes les configurations définies dans logrotate_config_files seront ajoutées à des fichiers individuels en utilisant la valeur définie dans name comme nom de fichier.

  • Les paramètres requis pour chaque définition dans logrotate_config_files sont :

logrotate_config_files:
  - name: ""        # => Obligatoire.
    state: ""       # => Optionnel : valeurs possibles sont present ou absent. Si non déclaré, il sera présent par défaut.
    path: ""        # => Obligatoire (Cela peut être une chaîne ou une liste !).
    directives: ""  # => Obligatoire.

Dépendances

Aucune.

Exemple de Playbook

    - hosts: serveurs
      vars:
        logrotate_config_global:
          - weekly
          - rotate 4
          - create
          - dateext
          - include /etc/logrotate.d

        logrotate_config_files:
          - name: messages
            state: absent
            path: /var/log/messages
            directives: |
              rotate 5
              weekly
              postrotate
                /usr/bin/killall -HUP syslogd
              endscript

          - name: httpd
            path:
              - /var/log/httpd/access.log
              - /var/log/httpd/error.log
            directives: |
              rotate 5
              mail [email protected]
              size 100k
              sharedscripts
              postrotate
                /usr/bin/killall -HUP httpd
              endscript

      roles:
         - role: gabops.logrotate

Licence

MIT

Informations sur l'auteur

Gabriel Suarez (Gabops)

Installer
ansible-galaxy install gabops.logrotate
Licence
mit
Téléchargements
25.5k
Propriétaire
I am a DevOps engineer who likes Python, Go, AWS, Kubernetes and climbing with friends.