コンテンツにスキップ

通知

Composia はタスク結果、バックアップイベント、イメージ更新、ノード状態変化の通知を送信します。Alertmanager、SMTP、Telegram の 3 つの通知チャンネルがサポートされています。

設定

すべてのチャンネルはコントローラー設定の notifications で設定します:

controller:
  notifications:
    alertmanager:
      enabled: true
      listen_path: "/api/v1/alerts"
    smtp:
      enabled: true
      host: "smtp.example.com"
      port: 587
      encryption: starttls
      username: "alerts@example.com"
      password: "REPLACE"
      from: "alerts@example.com"
      to:
        - "admin@example.com"
      on:
        - task_failed
        - backup_failed
      task_sources:
        - web
        - cli
    telegram:
      enabled: true
      bot_token: "REPLACE"
      chat_id: "REPLACE"
      on:
        - task_completed

イベントタイプ

以下の通知イベントタイプが利用可能です:

イベントトリガー
task_failedタスクが failed ステータスで終了した場合。
task_cancelledタスクが完了前にキャンセルされた場合。
task_completedタスクが正常に完了した場合。
task_awaiting_confirmation移行タスクが確認ステップに到達した場合。
backup_completedバックアップタスクまたはスケジュールバックアップが正常に完了した場合。
backup_failedバックアップタスクまたはステップが失敗した場合。
image_update_availableイメージチェックが新しいバージョンを検出した場合。
image_update_appliedイメージ更新が適用された場合。
node_offlineノードがハートビートの送信を停止した場合。
node_online以前オフラインだったノードがハートビートを再開した場合。
alertmanager_alertコントローラーが Alertmanager webhook レシーバーとして設定されている場合に Alertmanager アラートを受信した場合。

各チャンネルは on リストを使用して処理するイベントタイプをフィルタリングできます。空の on リストはすべてのイベントタイプを配信します。

タスクソースフィルター

SMTP と Telegram チャンネルはタスクをトリガーしたソースによるフィルタリングをサポートします:

ソース説明
webWeb UI を通じてトリガーされたアクション。
cliCLI を通じてトリガーされたアクション。
othersその他のソース。
scheduleスケジュールされたタスク(バックアップ、メンテナンス)。
systemシステム生成タスク。
auto_deploy自動デプロイトリガーによって生成されたタスク。

task_sources が空の場合、すべてのソースタイプに対して通知が送信されます。

Alertmanager

コントローラーは組み込みの Alertmanager webhook レシーバーを実行します。有効にすると、レシーバーは設定されたパスで待機します:

alertmanager:
  enabled: true
  listen_path: "/api/v1/alerts"
キー説明
enabledboolセクションが存在する場合、デフォルトで有効。
listen_pathstringAlertmanager webhook を受信する HTTP パス。デフォルトは /api/v1/alerts/ で始まり、空白を含まない必要があります。

この webhook URL で Alertmanager インスタンスをコントローラーのアドレスに向けます。アラートはイベントフィルターに従って設定された通知チャンネルに転送されます。

SMTP

SMTP はメールで通知を配信します:

キー有効時に必須説明
enabledboolいいえセクションが存在する場合、デフォルトで有効。
hoststringはいSMTP サーバーホスト名。
portintはいSMTP ポート。1 から 65535 の間である必要があります。
encryptionstringいいえnonestarttlsssl_tls。デフォルトは starttls
usernamestringいいえSMTP 認証ユーザー名。
passwordstringいいえSMTP パスワード。
password_filestringいいえファイルからパスワードを読み取ります。
fromstringはい送信者アドレス。
to[]stringはい受信者アドレス。
on[]stringいいえ通知するイベントタイプ。
task_sources[]stringいいえタスクソースフィルター。

Telegram

Telegram はボットを通じてチャットに通知を送信します:

キー有効時に必須説明
enabledboolいいえセクションが存在する場合、デフォルトで有効。
bot_tokenstringはいBotFather からの Telegram ボットトークン。
bot_token_filestringいいえファイルからボットトークンを読み取ります。
chat_idstringはいターゲットチャット ID。
on[]stringいいえ通知するイベントタイプ。
task_sources[]stringいいえタスクソースフィルター。
最終更新日 • Renovate Bot