2016-03-23 15 views
0

私はサービスステータスを表示するはずの簡単なプレイブックを持っています。私はマシンからの出力を見て、ステータスがアクティブかどうかを見たいと思っています。私はそうのように、デバッグプリントを使用:私はこれを実行するとループデバッグ印刷が可能なレジスタ

- name: name_of_services 
    shell: systemctl status {{item}} 
    with_items: 
    - service1 
    - service2 
    register: out 

- debug: var=item.stdout_lines 
    with_items: out.results 

私は私がそれの終わりにしたいですかitem.stdout_lines情報足したしたくない情報の多くを得ます。 どのように私のコマンドの出力をより良く見ることができますか?

答えて

0

デバッグを含むモジュールでは、ループ(つまりwith_items)で呼び出され、各繰り返しでitemの値が表示されます。私はこれをオフにする方法を知らない。出力を減らしたい場合は、msgパラメータを使用してに切り替えてみてください。これはジンジャーのテンプレート文字列を取ります。あなたは明らかにsystemctlの出力にマッチする正規表現を調整するようなことをすることができます。

- name: show values 
    debug: msg="{{ item.stdout_lines | replace_regex('^(.*).service.*Active: (.*).$', \\\1 \\\2) }}" 
    with_items: out.results 

あなたがデータにあなたがそれを好きなようにフォーマットするために、独自のfilter pluginを書いて検討することができreplace_regex機能を使用しない場合。

一般に、プレイ可能なプレイブックは、レジスタのバールやファクトなどを通じて収集されたステータス情報を表示するのには適していません。プレイブックの出力は、タスクのステータスに合わせて調整されています。

関連する問題