簡體   English   中英

您可以通過Ansible重試/直到模塊更改臨時消息嗎?

[英]Can you change the Interim message by Ansible retries / until module?

在我的一本劇本中,我啟動了一項服務並輪詢其狀態,然后再執行下一個任務,如下所示:

- name: Poll for service status
  uri:
    url: http://some-service/status
  register: response
  until: response.status == 200
  retries: 12
  delay: 10

每次查詢如下網址時,都會記錄一條消息

FAILED - RETRYING: TASK: Poll for service status

是否可以自定義此消息? 具體刪除FAILED一詞。

反復探究之后,我在默認的輸出回調中找到了“ FAILED-RETRYING”消息( 在此處了解有關回調的信息 )。 這意味着您可以將ansible.cfg的回調更改為適合您自己的內容,也可以自行創建。 您甚至可以在代碼中搜索v2_runner_retry來查看各種輸出。

例如,這是stdout_callback=oneline返回的內容。 即使在-vv也沒有“重試”消息。 它仍然顯示“ FAILED”,但這是因為它實際上失敗了。

ansible-playbook -vvi localhost, p.yml
ansible-playbook 2.4.1.0
  config file = /opt/app/ansible.cfg
  configured module search path = ['/opt/app/library']
  ansible python module location = /usr/local/lib/python3.5/dist-packages/ansible
  executable location = /usr/local/bin/ansible-playbook
  python version = 3.5.2 (default, Sep 14 2017, 22:51:06) [GCC 5.4.0 20160609]
Using /opt/app/ansible.cfg as config file
1 plays in p.yml
META: ran handlers
localhost | FAILED! => {"attempts": 3,"changed": false,"content": "","failed": true,"msg": "Status code was not [200]: Request failed: <urlopen error [Errno -2] Name or service not known>","redirected": false,"status": -1,"url": "http://some-service/status"}

除了將其設置在ansible.cfg之外,該文檔還暗示可以按角色進行操作。 我不知道如何。

正如@techraf所說,Ansible的人非常擅長審查請求請求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM