NerdGraph APIを使用して、アラート通知チャネルを管理できます。
ヒント
NerdGraphおよびNerdGraphエクスプローラーの使用を開始するためのヘルプについては、 NerdGraphの概要を参照してください。
通知チャンネルの取得
notificationChannels
クエリを使用すると、アカウントごとにすべての通知チャネルをページ分割できます。 notificationChannel
クエリを使用して、IDで特定の通知チャネルを取得することもできます。
ヒント
なお、特定のシークレットフィールド(例えば、パスワードやAPIキー)は、返されたフィールドの中で難読化されます。
通知チャンネルの作成
アラート通知チャネルを作成するためには、作成したい通知チャネルの具体的なタイプ(例えば、電子メール、Slackなど)と、その設定に必要な詳細(チャネルのタイプによって異なります)を知っておく必要があります。通知チャネルが作成されると、1つ以上の 警告ポリシー に関連付けることができます。関連づけられたチャンネルは、条件に違反したときにそれらのポリシーからの通知を受け取ります。
注意
既存の通知チャネルタイプを照会することはできますが、作成できるのはそのサブセットのみです。具体的には、 user チャンネルタイプには編集可能なフィールドがなく、 Campfire と HipChat チャンネルタイプはどちらも非推奨です。
通知チャンネルの更新
アラート通知チャネルを更新するためには、変更したい通知チャネルの具体的なタイプ(たとえばメール、Slackなど)と、その設定に必要な詳細(チャネルのタイプによって異なります)を知っておく必要があります。他のGraphQL APIと同様に、チャネルのID以外の情報を知らなくても、チャネルの単一フィールドを更新することができます。
注意
既存の通知チャネルタイプを照会することはできますが、更新できるのはそのうちのサブセットのみです。具体的には、 user チャンネルタイプには編集可能なフィールドがなく、 Campfire と HipChat チャンネルタイプはどちらも非推奨です。
通知チャンネルの削除
通知チャネルの削除は、アカウントIDとチャネルIDのみで可能です。チャネルを削除すると、すべてのポリシーから切り離され、そのチャネルには今後通知が送られなくなることに注意してください。
mutation {
alertsNotificationChannelDelete(accountId: YOUR_ACCOUNT_ID,
id: YOUR_CHANNEL_ID) {
id
error {
description
errorType
notificationChannelId
}
}
}
チャンネルをポリシーに関連付ける
アラート通知チャネルを作成するだけでは十分ではありません。チャンネルが作成されたら、それを1つ以上の ポリシーに関連付ける必要があります 。ポリシーに関連付けられると、そのポリシーの条件が違反したときに、チャネルはアラート通知を受け取ることができます。
この例では、2つのチャンネルと1つのポリシーを関連付けます。
mutation {
alertsNotificationChannelsAddToPolicy(accountId: YOUR_ACCOUNT_ID,
notificationChannelIds: [FIRST_CHANNEL_ID, SECOND_CHANNEL_ID],
policyId: YOUR_POLICY_ID
) {
notificationChannels {
id
}
policyId
errors {
description
errorType
notificationChannelId
}
}
}
チャンネルとポリシーの分離
通知チャネルが耐用年数を過ぎた場合 (たとえば、引退した電子メールリストなど)、そのチャネルを、アラート通知を送信している ポリシー (またはポリシー) から切り離す必要が出てきました。この API コールは、チャネル自体はそのまま残しますが、指定されたポリシーからは削除します。
この例では、ポリシーから2つのチャンネルを削除し(他のチャンネルはそのまま)、その2つのチャンネルIDが削除されたことを確認しています。
mutation {
alertsNotificationChannelsRemoveFromPolicy(accountId: YOUR_ACCOUNT_ID,
notificationChannelIds: [FIRST_CHANNEL_ID, SECOND_CHANNEL_ID],
policyId: YOUR_POLICY_ID
) {
notificationChannels {
id
}
policyId
errors {
description
errorType
notificationChannelId
}
}
}
ヒント
ポリシー からアラート通知チャネルを削除しても、他のポリシーで使用されている可能性があるため、 チャネルは削除されません。一方で、チャネルを削除すると、関連するすべてのポリシーがそのチャネルへのアラート通知の送信を停止します。