Lorsque j'ai créé cet outil, je ne connaissais pas la surveillance des journaux. Je voulais voir la situation avec les journaux sur mes serveurs en général, et j'ai donc fait ce vélo. Je pense que ce mécanisme peut aider les débutants à comprendre les possibilités alternatives d'ansible.
Produits logiciels utilisés:
- python 2.7.14
- ansible 2.3
- serveurs d'astérisque basés sur FreePBX 13
Le mécanisme se compose de deux parties: un script python qui traite le fichier journal et envoie un rapport au courrier électronique, et un playbook pour collecter les journaux des serveurs et les transférer vers le script pour traitement.
Playbook lui-mĂȘme:
--- - name: parseastlogs hosts: production_asterisks vars: date: "{{ lookup('pipe', 'date +%Y%m%d') }}" ipaddr: "{{ ansible_default_ipv4.address }}" tasks: - debug: var=date - debug: var=ipaddr - fetch: src: /var/log/asterisk/full-{{ date }} dest: /tmp/full-{{ date }}-{{ ipaddr }} flat: yes - local_action: "shell /etc/ansible/localscripts/astReporter.py {{ ipaddr }} full-{{ date }}-{{ ipaddr }}" , fetch. - flat, .
Script:
le script est lancé par la commande: / usr / local / bin / ansible-playbook /etc/ansible/playbooks/parseastlogs.yml
Le résultat de la commande sera un nombre de lettres (une lettre pour chaque serveur du groupe production_asterisk) avec approximativement le contenu suivant:

Si vous avez des questions ou des suggestions, je suis prĂȘt Ă y rĂ©pondre.