moira-alert.moira-trigger-role

moira-trigger-role

ここに新しい場合は、まず私たちの主なREADMEをチェックしてください。

これは、python-moira-clientに基づいて、Moiraトリガーを作成、更新、削除するためのAnsibleロールです。

ロールの使用法

インストール

設定

ロールのタスク

インストール

Ansible Galaxy

ansible-galaxy install moira-alert.moira-trigger-role

Makefileを使ったAnsibleロール

exampleから内容を自分のMakefileに配置し、Ansible Galaxyからロールをダウンロードします。
また、事前定義されたパラメータでトリガーを管理するプレイブックを作成します。

- name: manage moira triggers
  hosts: serviceName
  roles:
    - role: moira-alert.moira-trigger-role
      moira_api: http://localhost:8081/api
      moira_triggers: '{{ ServiceNameTriggers }}'
      delegate_to: 127.0.0.1
      run_once: True
      dry_run: False

注意: すべてのタスクはあなたのansibleコントロールマシンから実行する必要があります。

設定

以下のパラメータをvarsファイルに事前定義してください。動作例はこちらにあります。

認証

パラメータ 説明 タイプ 必須 デフォルト
moira_api Moira APIのURL 文字列 はい N/A http://localhost/api/
moira_auth_custom カスタム認証ヘッダー 辞書 いいえ なし Authorization: apiKey
moira_auth_user 認証ユーザー(基本認証) 文字列 いいえ なし admin
moira_auth_pass 認証パスワード(基本認証) 文字列 いいえ なし pass
moira_auth_login 認証ログイン(基本認証) 文字列 いいえ なし admin

注意: 基本認証以外の追加認証メカニズムを使用している場合は、moira_auth_customを使用してください。
そうでない場合はmoira_auth_user、moira_auth_pass、moira_auth_loginを使用してください。
moira_auth_loginにはX-Webauth-Userヘッダーの値を含める必要があります。

トリガーの状態

パラメータ 説明 タイプ 必須 選択肢 デフォルト
state トリガーの望ましい状態 文字列 はい present
absent
N/A present
id トリガーID 文字列 はい N/A N/A trigger_1
name トリガー名 文字列 はい N/A N/A Trigger 1
tags トリガータグのリスト リスト はい N/A N/A - Project
- Service
targets トリガーターゲットのリスト
利用可能なグラファイト関数を見る
リスト はい N/A N/A - prefix.*.postfix
warn_value WARNステータスを設定するための値 フロート いいえ N/A なし 300
error_value ERRORステータスを設定するための値 フロート いいえ N/A なし 600
trigger_type トリガーのタイプ 文字列 いいえ rising
falling
expression
N/A rising
expression C言語風の式 文字列 いいえ N/A 空の文字列 t1 >= 10 ? ERROR : (t1 >= 1 ? WARN : OK)
ttl トリガーにメトリックがない場合、MoiraはTTL秒後にメトリックをTTLState状態に切り替えます 整数 いいえ N/A 600 600
ttl_state 'ttl'の期限が切れたときのトリガー状態 文字列 いいえ NODATA
DEL
ERROR
WARN
OK
NODATA WARN
is_remote リモートストレージを使用 ブール いいえ
trigger_source トリガーのソースを指定し、is_remoteをオーバーライドします 文字列 いいえ graphite_local
graphite_remote
prometheus_remote
なし graphite_local
cluster_id クラスターIDを指定します 文字列 いいえ N/A なし default
desc トリガーの説明 文字列 いいえ N/A 空の文字列 trigger test description
mute_new_metrics もし真なら、最初のNODATA → OKイベントは省略されます ブール いいえ
disabled_days トリガーをサイレントモードにする日 リスト いいえ N/A 空のリスト - Mon
- Wed
timezone_offset タイムゾーンオフセット(分) 整数 いいえ N/A 0 -180
start_hour アラートを送信する開始時刻 整数 いいえ N/A 0 9
start_minute アラートを送信する開始分 整数 いいえ N/A 0 0
end_hour アラートを送信する終了時刻 整数 いいえ N/A 23 17
end_minute アラートを送信する終了分 整数 いいえ N/A 59 0
alone_metrics 特定のターゲットを単一メトリクスとして設定 オブジェクト、例: いいえ N/A {'t1': 偽, 't2': 真, ... 'tN': 真} {'t1': 偽, 't2': 偽}

ロールのタスク

依存関係の管理

python-moira-clientがインストールされているか確認するタスク(pip経由)

トリガーの管理

状態「present」を使用して、新しいトリガーを作成または既存のトリガーを編集します:

 - name: create trigger
   moira_trigger:
      ...
      state: present
      ...  

既存のトリガーを削除するには、状態「absent」を使用します:

 - name: remove trigger
   moira_trigger:
      ...
      state: absent
      ...  
プロジェクトについて

Ansible role to create, update and delete Moira triggers

インストール
ansible-galaxy install moira-alert.moira-trigger-role
ライセンス
mit
ダウンロード
19.1k
所有者
Realtime alerting system based on Graphite data