免責事項: Prometheusは、設定されたアラートルールによって生成されたアラートの送信を自動的に処理します。 直接クライアントを実装するのではなく、Prometheusで時系列データに基づいてアラートルールを設定することを強くお勧めします。
Alertmanagerには、v1とv2の2つのAPIがあり、どちらもアラートをリッスンします。 v1のスキームは、以下のコードスニペットで説明されています。 v2のスキームは、AlertmanagerリポジトリにあるOpenAPI仕様として指定されています。 クライアントは、アラートがアクティブな限り(通常は30秒から3分のオーダー)、アラートを継続的に再送信することが想定されています。 クライアントは、POSTリクエストを介してアラートのリストをAlertmanagerにプッシュできます。
各アラートのラベルは、アラートの同一インスタンスを識別し、重複排除を実行するために使用されます。 アノテーションは、常に最後に受信したものに設定され、アラートを識別するものではありません。
startsAt
とendsAt
の両方のタイムスタンプはオプションです。 startsAt
が省略された場合、現在の時刻がAlertmanagerによって割り当てられます。 endsAt
は、アラートの終了時刻がわかっている場合にのみ設定されます。 それ以外の場合、アラートが最後に受信されてからの設定可能なタイムアウト期間に設定されます。
generatorURL
フィールドは、クライアントでこのアラートの原因となったエンティティを識別する一意のバックリンクです。
[
{
"labels": {
"alertname": "<requiredAlertName>",
"<labelname>": "<labelvalue>",
...
},
"annotations": {
"<labelname>": "<labelvalue>",
},
"startsAt": "<rfc3339>",
"endsAt": "<rfc3339>",
"generatorURL": "<generator_url>"
},
...
]
このドキュメントはオープンソースです。 問題の報告やプルリクエストを送信して、改善にご協力ください。