Quando criei essa ferramenta, não estava familiarizado com o logwatch. Eu queria ver a situação com os logs nos meus servidores em geral e, por isso, fiz esta bicicleta. Eu acho que esse mecanismo pode ajudar os iniciantes a entender as possibilidades alternativas do ansible.
Produtos de software usados:
- python 2.7.14
- ansible 2.3
- servidores asteriscos baseados no FreePBX 13
O mecanismo consiste em duas partes - um script python que processa o arquivo de log e envia um relatório para o correio e um manual para coletar logs dos servidores e transferi-los para o script para processamento.
Manual em si:
--- - 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:
o script é iniciado pelo comando: / usr / local / bin / ansible-playbook /etc/ansible/playbooks/parseastlogs.yml
O resultado do comando será um número de letras (uma letra para cada servidor do grupo production_asterisk) com aproximadamente o seguinte conteúdo:

Se você tiver dúvidas ou sugestões, estou pronto para respondê-las.