#service #ansible #supervisord #status
#Обслуживание #ансибль #руководитель #Статус
Вопрос:
- name: Supervisorctl status block: - name: Extract supervisor service name shell: | supervisorctl status | awk '{print $1}' register: service_name - name: Print service name through supervisorctl status debug: msg: "{{ service_name.stdout_lines }}" - name: Print the status of each service according to its name shell: | supervisorctl status {{ item }} | awk '{print $2}' register: service_status loop: "{{ service_name.stdout_lines }}" failed_when: service_status.stdout == "STOPPED" rescue: - name: Report when service fails debug: msg: "Service {{ service_name.stdout_lines }} on {{ ansible_host }} is 'FATAL'" loop: "{{ service_name.stdout_lines.stdout }}" when: '"STOPPED" in service_status.stdout'
ЗАДАЧА [Сообщить о сбое службы] ************************************************************************************************************************************************************** фатально: [ansible_host]: НЕ УДАЛОСЬ! =gt; {«msg»: «‘gt;объект списка» не имеет атрибута «stdout»«}
Я хочу показать что-то вроде: «Служба my_service на my_host является ФАТАЛЬНОЙ»
Спасибо!
Комментарии:
1.
loop: "{{ service_name.stdout_lines.stdout }}"
должно бытьloop: "{{ service_name.stdout_lines }}"
. Тогдаmsg: "Service {{ service_name.stdout_lines }} on {{ ansible_host }} is 'FATAL'"
должно бытьmsg: "Service {{ item }} on {{ ansible_host }} is 'FATAL'"
или что-то в этом роде.