Как получить статус каждого элемента supervisorctl и сообщить, какой из них не удался?

#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'" или что-то в этом роде.