通知のトラブルシューティング

トラブルシューティング情報を使用して、通知の操作中に発生する可能性がある一般的な問題を識別して対処します。

メッセージを受信していない

サブスクリプションの欠落しているメッセージをトラブルシューティングします。

サブスクリプションで予期したメッセージが受信されませんでした。メッセージ配信のフローは、想定どおりに発生しませんでした。たとえば、コンピュート・インスタンスがアラームしきい値を超えた場合に電子メールを受信しませんでした。

この問題の考えられる原因と解決策を次に示します。

原因: トリガーが満たされていません

メッセージ送信リソースに対して構成されたトリガーは、探していた時間範囲内に満たされていない可能性があります。(メッセージを送信するリソースは、アラーム、お知らせのサブスクリプション、イベント・ルール、コネクタまたはコンテキスト通知(アラームまたはイベント・ルール)です。)

たとえば、1時間間隔で90%のしきい値に構成されたアラームについて考えてみます。コンピュート・インスタンスがしきい値を超える前に、最新の評価が行われた可能性があります。

診断方法

メッセージ送信リソースの履歴をレビューし、結果をトピックの公開済および配信済メッセージと比較します。

  1. トリガー条件が発生した時間を書き留めます。

    時間を判断するためにリソースのデフォルトのメトリック・チャートを表示します。

    たとえば、コンピュート・インスタンスのメトリック・チャートを表示し、10:01にアラームに定義されているしきい値を超えたことがわかります。

  2. 関連リソース(アラーム、イベント・ルールまたはコネクタ)によって記録された関連タイムスタンプを検索します。
    • アラームの場合: トリガー条件の時間に近い関連するアラーム状態遷移を探します。

      ヒント

      一意の識別子を使用して、アラームとメッセージを評価します。重複アイテムの処理の防止を参照してください。アラーム・メッセージで使用されるフォーマットを表示するには、メッセージのフォーマットと例を参照してください。

      アラーム履歴を表示します。その時間に見つかった遷移は、アラームが欠落しているメッセージを送信した可能性があることを示します。遷移がない場合、アラームはメッセージを送信しなかったことを示します。アラームを遷移させる必要がある場合は、その構成を確認します。

    • イベント・ルールの場合: トリガー条件の時間に近い一致イベントを検索します。

      イベント・ルールのデフォルトのメトリック・チャートを表示します。「一致したイベント」チャートを参照してください。その時間に関する一致するイベントは、欠落しているメッセージがイベント・ルールによって送信された可能性があることを示します。一致するイベントがない場合、イベント・ルールによってメッセージが送信されなかったことを示します。イベント・ルールで一致するイベントを検出する必要がある場合は、その構成を確認します。

    • コネクタの場合: トリガー条件の時間に近い書込みメッセージを探します。

      コネクタのデフォルトのメトリック・チャートを表示します。「ターゲットに書き込まれたメッセージ」チャートを参照してください。その時間に関するメッセージは、コネクタが欠落しているメッセージを送信した可能性があることを示しています。メッセージが書き込まれていない場合は、コネクタがメッセージを送信しなかったことを示します。コネクタによるメッセージの書込みが必要な場合は、その構成を確認してください。

  3. サブスクリプションの親トピックで、前のステップの関連タイムスタンプに近いメッセージの公開時間と配信時間を探します。

    トピックのデフォルトのメトリック・チャートを表示します。具体的には、「公開されたメッセージ合計数」および「配信されたメッセージ数」メトリック・チャートを表示します。配信されなかった公開メッセージは、サブスクリプションのエンドポイントの問題を示している可能性があります。

修正方法

この状況は、将来のトリガー条件に対して修正できます。メッセージ送信リソースのトリガー構成を更新して、トリガーが期待どおりに満たされるようにします。

たとえば、短い間隔を使用するようにアラームを更新します。

メッセージ送信リソースを更新する手順は次のとおりです。

原因: リソースがメッセージを送信しませんでした

メッセージ送信リソースがメッセージを通知に送信していない可能性があります。(メッセージを送信するリソースは、アラーム、お知らせのサブスクリプション、イベント・ルール、コネクタまたはコンテキスト通知(アラームまたはイベント・ルール)です。)

たとえば、イベント・ルールが別のイベントに対して誤って構成されたときに、イベントの電子メールが予想される場合があります。

診断方法

メッセージ送信リソースの履歴をレビューし、結果をトピックの公開済および配信済メッセージと比較します。

  1. トリガー条件が発生した時間を書き留めます。

    時間を判断するためにリソースのデフォルトのメトリック・チャートを表示します。

    たとえば、コンピュート・インスタンスのメトリック・チャートを表示し、10:01にアラームに定義されているしきい値を超えたことがわかります。

  2. 関連リソース(アラーム、イベント・ルールまたはコネクタ)によって記録された関連タイムスタンプを検索します。
    • アラームの場合: トリガー条件の時間に近い関連するアラーム状態遷移を探します。

      ヒント

      一意の識別子を使用して、アラームとメッセージを評価します。重複アイテムの処理の防止を参照してください。アラーム・メッセージで使用されるフォーマットを表示するには、メッセージのフォーマットと例を参照してください。

      アラーム履歴を表示します。その時間に見つかった遷移は、アラームが欠落しているメッセージを送信した可能性があることを示します。遷移がない場合、アラームはメッセージを送信しなかったことを示します。アラームを遷移させる必要がある場合は、その構成を確認します。

    • イベント・ルールの場合: トリガー条件の時間に近い一致イベントを検索します。

      イベント・ルールのデフォルトのメトリック・チャートを表示します。「一致したイベント」チャートを参照してください。その時間に関する一致するイベントは、欠落しているメッセージがイベント・ルールによって送信された可能性があることを示します。一致するイベントがない場合、イベント・ルールによってメッセージが送信されなかったことを示します。イベント・ルールで一致するイベントを検出する必要がある場合は、その構成を確認します。

    • コネクタの場合: トリガー条件の時間に近い書込みメッセージを探します。

      コネクタのデフォルトのメトリック・チャートを表示します。「ターゲットに書き込まれたメッセージ」チャートを参照してください。その時間に関するメッセージは、コネクタが欠落しているメッセージを送信した可能性があることを示しています。メッセージが書き込まれていない場合は、コネクタがメッセージを送信しなかったことを示します。コネクタによるメッセージの書込みが必要な場合は、その構成を確認してください。

修正方法

この状況は、将来のトリガー条件に対して修正できます。たとえば、目的のイベントに一致するようにイベント・ルールを更新します。

メッセージ送信リソースを更新する手順は次のとおりです。

原因: サブスクリプションが正しく構成されていません

サブスクリプションが正しく構成されていない可能性があります。

たとえば、電子メール・サブスクリプションのエンドポイントが予想される電子メール・アドレスと一致しない場合や、Slackサブスクリプションのエンドポイントに正しいWebフックが含まれていない場合があります。

正しく構成されていないサブスクリプションを示す1つのインジケータは、配信されない公開済メッセージです。

診断方法

サブスクリプションの詳細を取得して、構成を確認します。たとえば、電子メール・サブスクリプションのエンドポイントと予想される電子メール・アドレスを比較します。

メッセージ送信リソースの履歴をレビューし、結果をトピックの公開済および配信済メッセージと比較します。

  1. トリガー条件が発生した時間を書き留めます。

    時間を判断するためにリソースのデフォルトのメトリック・チャートを表示します。

    たとえば、コンピュート・インスタンスのメトリック・チャートを表示し、10:01にアラームに定義されているしきい値を超えたことがわかります。

  2. 関連リソース(アラーム、イベント・ルールまたはコネクタ)によって記録された関連タイムスタンプを検索します。
    • アラームの場合: トリガー条件の時間に近い関連するアラーム状態遷移を探します。

      ヒント

      一意の識別子を使用して、アラームとメッセージを評価します。重複アイテムの処理の防止を参照してください。アラーム・メッセージで使用されるフォーマットを表示するには、メッセージのフォーマットと例を参照してください。

      アラーム履歴を表示します。その時間に見つかった遷移は、アラームが欠落しているメッセージを送信した可能性があることを示します。遷移がない場合、アラームはメッセージを送信しなかったことを示します。アラームを遷移させる必要がある場合は、その構成を確認します。

    • イベント・ルールの場合: トリガー条件の時間に近い一致イベントを検索します。

      イベント・ルールのデフォルトのメトリック・チャートを表示します。「一致したイベント」チャートを参照してください。その時間に関する一致するイベントは、欠落しているメッセージがイベント・ルールによって送信された可能性があることを示します。一致するイベントがない場合、イベント・ルールによってメッセージが送信されなかったことを示します。イベント・ルールで一致するイベントを検出する必要がある場合は、その構成を確認します。

    • コネクタの場合: トリガー条件の時間に近い書込みメッセージを探します。

      コネクタのデフォルトのメトリック・チャートを表示します。「ターゲットに書き込まれたメッセージ」チャートを参照してください。その時間に関するメッセージは、コネクタが欠落しているメッセージを送信した可能性があることを示しています。メッセージが書き込まれていない場合は、コネクタがメッセージを送信しなかったことを示します。コネクタによるメッセージの書込みが必要な場合は、その構成を確認してください。

  3. サブスクリプションの親トピックで、前のステップの関連タイムスタンプに近いメッセージの公開時間と配信時間を探します。

    トピックのデフォルトのメトリック・チャートを表示します。具体的には、「公開されたメッセージ合計数」および「配信されたメッセージ数」メトリック・チャートを表示します。配信されなかった公開メッセージは、サブスクリプションのエンドポイントの問題を示している可能性があります。

修正方法
この状況は、将来のトリガー条件に対して修正できます。

原因: 削除されたメッセージ

通知は、サブスクリプションを対象としたアラーム、お知らせサブスクリプション、イベント・ルール、コネクタまたはコンテキスト通知(アラームまたはイベント・ルール)から受信したメッセージを削除しました。この問題は、サブスクリプションが保留中または正しく構成されていない場合に発生します。

診断方法

サブスクリプションの親トピックで、削除されたファンクション・メッセージを探します。トピックのデフォルトのメトリック・チャートを表示します。具体的には、「失敗したメッセージ数」メトリック・チャートを表示し、メトリック・ディメンションendpointTypeの値(削除されたファンクション・メッセージの場合はORACLE_FUNCTIONS)を書き留めます。削除されたファンクション・メッセージが存在する場合、このメトリック・チャートのカウンタは増分され、endpointTypeのORACLE_FUNCTIONSと表示されます。

修正方法
この状況は、将来のトリガー条件に対して修正できます。

原因: サブスクリプションがアクティブではありません

たとえば、確認が不足しているため、Slackサブスクリプションは保留ステータスです。

診断方法
サブスクリプションの詳細を取得して、アクティブ・ステータスを確認します。サブスクリプションが見つからない場合は、削除されている可能性があります。
修正方法
この状況は、将来のトリガー条件に対して修正できます。アクティブ化するにはサブスクリプションを確認するか、見つからない場合はサブスクリプションを再作成します。

原因: サポートされていないリソースがSMSに使用されました

メッセージ送信リソースに対してSMSメッセージが有効でない可能性があります。SMSサブスクリプションは、次のOracle Cloud Infrastructureサービスから送信されたメッセージに対してのみ有効です: お知らせモニタリングおよびコネクタ・ハブ「開始する前に(SMSサブスクリプションの作成」ページで)を参照してください。

たとえば、トピックにメッセージを送信するように構成されたイベント・ルールについて考えてみます。このトピックには、電子メール・サブスクリプションとSMSサブスクリプションが含まれています。ただし、SMSメッセージはイベント・サービスに対して有効になっていません。この場合、SMSメッセージは削除されます。

診断方法

サブスクリプションの親トピックで、ドロップされたSMSメッセージを探します。トピックのデフォルトのメトリック・チャートを表示します。具体的には、「失敗したメッセージ数」メトリック・チャートを表示し、メトリック・ディメンションendpointType (削除されたSMSメッセージの場合はSMS)の値を確認します。たとえば、サポートされていないリソースがSMSサブスクリプションを含むトピックにSMSメッセージを送信すると、SMSメッセージは削除されます。このメトリック・チャートのカウンタが増分され、endpointTypeのSMSが表示されます。

修正方法
この状況は、将来のトリガー条件に対して修正できます。SMSメッセージの送信が有効になっているメッセージ送信リソースを作成します:

原因: 国際SMS機能がありません

SMSメッセージは、サポートされていないロケールとの間で送受信される可能性があります。SMSメッセージが別の国の電話番号から送信される場合は、国際SMS機能が必要です。

診断方法
他の国との間でSMSメッセージを送受信できることを確認します。より多くのユーザーがローカルの電話番号からSMSメッセージを受信できるよう、サポートされる国を継続的に増やしていきます。SMSを参照してください。
修正方法
この状況は、将来のトリガー条件に対して修正できます。国際的なSMS機能を利用できます。

原因: 抑制された電子メール・アドレス

Eメール・アドレスが抑制リストにある場合は、Eメール・メッセージが配信されない場合があります。

抑制の理由には、バウンス・コードとユーザーからの苦情があります。詳細は、抑制リストの管理を参照してください。

診断方法

サブスクリプションの親トピックで、ドロップされた電子メール・メッセージを探します。トピックのデフォルトのメトリック・チャートを表示します。具体的には、「失敗したメッセージ数」メトリック・チャートを表示し、メトリック・ディメンションendpointTypeの値(削除された電子メール・メッセージの場合はEMAIL)を書き留めます。たとえば、電子メールアドレスが抑制リストにある場合、電子メールメッセージは削除されます。このメトリック・チャートのカウンタが増分され、endpointTypeの「電子メール」が表示されます。

修正方法
この状況は、将来のトリガー条件に対して修正できます。抑制リストからのEメール・アドレスの削除を参照してください。今後、抑制リストを回避する方法の詳細は、正のEメール送信者評価の保守を参照してください。

原因: モニタリング権限にコンパートメントがない

トピックがOracle Platform Services管理対象コンパートメント(ManagedCompartmentForPaasという名前)にある場合、モニタリング・サービスにはそれを使用する権限がなく、そのトピックに送信されたアラーム・メッセージを受信しない可能性があります。

診断方法

トピックの詳細を取得して、そのコンパートメントがOracle Platform Services管理コンパートメント("ManagedCompartmentForPaas"という名前)であるかどうかを判断します。

修正方法
この状況は、将来のトリガー条件に対して修正できます。解決のステップなどの詳細は、Oracle Platform Services管理対象コンパートメントでアラーム・メッセージが受信されませんを参照してください。

サブスクリプション適用解除済

サブスクリプションが消失する原因となったイベントを特定します。

以前にアクセスした登録は利用できなくなりました。

サブスクリプションは、明示的な削除またはサブスクリプション解除イベント(GetUnsubscriptionへのコール)によって削除されました。

たとえば、電子メール配信リストのメンバーが、アラームによって送信された電子メール・メッセージに記載されているサブスクライブ解除リンクをクリックしたとします。

処置: 登録解除および削除イベントの識別

  1. ナビゲーション・メニューを開き、「監視および管理」をクリックします。「ロギング」で、「監査」をクリックします。
  2. モニターするサブスクリプションを含むコンパートメントを選択します。
  3. 次の値を指定して、サブスクリプション解除および削除イベントをフィルタします。
    • 時間によるフィルタ: 「カスタム」を選択します。
    • 開始日: 検索ウィンドウの開始日を選択します。
    • 終了日: 検索ウィンドウの終了日を選択します。
    • リクエスト・アクション・タイプ: 「DELETE」を選択します。
      ノート

      古いサブスクリプション解除および削除イベントをフィルタするには、「GET」を選択します(2023年7月18日より前のメッセージに使用)。
    • リソース: 「ons-subscription」を選択します。
    • イベント・タイプ: 次の項目を選択します。
      • com.oraclecloud.notification.GetUnsubscription
      • com.oraclecloud.notification.DeleteSubscription
    一致するイベントは、「イベントの探索」の下にリストされています。
  4. イベントが欠落しているサブスクリプションに関連しているかどうかを確認するには、イベントを展開してそのログ・データをレビューします。
    サブスクリプション解除イベントのmessageの例: "GetUnsubscription succeeded. Subscription removed from topic ocid1.onstopic.oc1.iad.exampleid"
  5. (オプション)「ログ・データのエクスポート(JSON)」をクリックして、リストされたイベントをエクスポートします。
    監査イベントの使用の詳細は、Audit Logsを参照してください。

処置: 登録解除イベントの通知を送信します

  1. ナビゲーション・メニューを開き、「監視および管理」をクリックします。「イベント・サービス」で、「ルール」をクリックします。
  2. コンパートメントを選択します。
  3. 「ルールの作成」をクリックします。
  4. 「ルールの作成」ページに、わかりやすい名前と説明を入力します。機密情報を入力しないでください。
  5. 「ルール条件」で、次の値を指定します。
    • 条件: 「イベント・タイプ」を選択します。
    • サービス名: 「通知」を選択します。
    • イベント・タイプ: 「サブスクリプション- 登録解除の取得」を選択します。
  6. 「処理」で、次の値を入力します。
    • アクション・タイプ: 「通知」を選択します。
    • 通知コンパートメント: イベント・メッセージに使用するトピックを含むコンパートメントを選択します。
    • トピック: イベント・メッセージに使用するトピックを選択します。
  7. 「ルールの作成」をクリックします。

ファンクションが呼出しまたは実行されない

呼び出されなかったか、サブスクリプションを介して予期したとおりに実行されなかった機能をトラブルシューティングします。

ファンクション・サブスクリプションで構成されたファンクションが呼び出されなかったか、実行されませんでした。ファンクションのメッセージ配信フローは、想定どおりに発生しませんでした。たとえば、構成された関数はメモリーを超えたときにVMのサイズを変更しませんでした。

この問題の考えられる原因と解決策を次に示します。

原因: リソースがメッセージを送信しませんでした

メッセージ送信リソースがメッセージを通知に送信していない可能性があります。(メッセージ送信リソースは、アラーム、お知らせのサブスクリプション、イベント・ルール、コネクタまたはコンテキスト通知(アラームまたはイベント・ルール)です。)

たとえば、イベントが発生したために、イベント・ルールが構成済のトピックにメッセージを送信する場合があります。ただし、イベント・ルールは、発生しなかった別のイベントに対して誤って構成されることがあります。

診断方法

メッセージ送信リソースの履歴をレビューし、結果をトピックの公開済および配信済メッセージと比較します。

  1. トリガー条件が発生した時間を書き留めます。

    時間を判断するためにリソースのデフォルトのメトリック・チャートを表示します。

    たとえば、コンピュート・インスタンスのメトリック・チャートを表示し、10:01にアラームに定義されているしきい値を超えたことがわかります。

  2. 関連リソース(アラーム、イベント・ルールまたはコネクタ)によって記録された関連タイムスタンプを検索します。
    • アラームの場合: トリガー条件の時間に近い関連するアラーム状態遷移を探します。

      ヒント

      一意の識別子を使用して、アラームとメッセージを評価します。重複アイテムの処理の防止を参照してください。アラーム・メッセージで使用されるフォーマットを表示するには、メッセージのフォーマットと例を参照してください。

      アラーム履歴を表示します。その時間に見つかった遷移は、アラームが欠落しているメッセージを送信した可能性があることを示します。遷移がない場合、アラームはメッセージを送信しなかったことを示します。アラームを遷移させる必要がある場合は、その構成を確認します。

    • イベント・ルールの場合: トリガー条件の時間に近い一致イベントを検索します。

      イベント・ルールのデフォルトのメトリック・チャートを表示します。「一致したイベント」チャートを参照してください。その時間に関する一致するイベントは、欠落しているメッセージがイベント・ルールによって送信された可能性があることを示します。一致するイベントがない場合、イベント・ルールによってメッセージが送信されなかったことを示します。イベント・ルールで一致するイベントを検出する必要がある場合は、その構成を確認します。

    • コネクタの場合: トリガー条件の時間に近い書込みメッセージを探します。

      コネクタのデフォルトのメトリック・チャートを表示します。「ターゲットに書き込まれたメッセージ」チャートを参照してください。その時間に関するメッセージは、コネクタが欠落しているメッセージを送信した可能性があることを示しています。メッセージが書き込まれていない場合は、コネクタがメッセージを送信しなかったことを示します。コネクタによるメッセージの書込みが必要な場合は、その構成を確認してください。

修正方法

この状況は、将来のトリガー条件に対して修正できます。たとえば、目的のイベントに一致するようにイベント・ルールを更新します。

メッセージ送信リソースを更新する手順は次のとおりです。

原因: 削除されたメッセージ

通知は、ファンクション・サブスクリプションを対象としたアラーム、お知らせサブスクリプション、イベント・ルール、コネクタまたはコンテキスト通知(アラームまたはイベント・ルール)から受信したメッセージを削除しました。この問題は、サブスクリプションが保留中または正しく構成されていない場合に発生します。

診断方法

サブスクリプションの親トピックで、削除されたファンクション・メッセージを探します。トピックのデフォルトのメトリック・チャートを表示します。具体的には、「失敗したメッセージ数」メトリック・チャートを表示し、メトリック・ディメンションendpointTypeの値(削除されたファンクション・メッセージの場合はORACLE_FUNCTIONS)を書き留めます。削除されたファンクション・メッセージが存在する場合、このメトリック・チャートのカウンタは増分され、endpointTypeのORACLE_FUNCTIONSと表示されます。

修正方法
この状況は、将来のトリガー条件に対して修正できます。

原因: ファンクションが呼び出されませんでした

通知アラーム、お知らせサブスクリプション、イベント・ルール、コネクタまたはコンテキスト通知(アラームまたはイベント・ルール)から受信したメッセージを配信しましたが、ファンクションは起動されませんでした。

診断方法
ノート

通知サービスには、ファンクションが呼び出された後にそのファンクションに関する情報はありません。

これが最初の起動の場合、レスポンスが遅延する可能性があります。

  1. 通知配信の確認: サブスクリプションの親トピックで、通知がメッセージをファンクションに配信したことを確認します。トピックのデフォルトのメトリック・チャートを表示します。具体的には、「配信されたメッセージ数」メトリック・チャートを表示し、メトリック・ディメンションendpointTypeの値(配信されたファンクション・メッセージの場合はORACLE_FUNCTIONS)を書き留めます。ファンクション・メッセージが配信されると、このメトリック・チャートのカウンタが増分し、endpointTypeにORACLE_FUNCTIONSと表示されます。
  2. 関数で、トリガー条件が発生した時間に近い呼び出しおよび実行時間を探します。
修正方法
関数が呼び出されなかった場合は、サポートに連絡してください

原因: ファンクションが実行されませんでした

通知アラーム、お知らせのサブスクリプション、イベント・ルール、コネクタまたはコンテキスト通知(アラームまたはイベント・ルール)から受信したメッセージを配信した後でも、ファンクションは実行されませんでした。

診断方法
ノート

通知サービスには、ファンクションが呼び出された後にそのファンクションに関する情報はありません。

これが最初の起動の場合、レスポンスが遅延する可能性があります。

  1. 通知配信の確認: サブスクリプションの親トピックで、通知がメッセージをファンクションに配信したことを確認します。トピックのデフォルトのメトリック・チャートを表示します。具体的には、「配信されたメッセージ数」メトリック・チャートを表示し、メトリック・ディメンションendpointTypeの値(配信されたファンクション・メッセージの場合はORACLE_FUNCTIONS)を書き留めます。ファンクション・メッセージが配信されると、このメトリック・チャートのカウンタが増分し、endpointTypeにORACLE_FUNCTIONSと表示されます。
  2. 関数で、トリガー条件が発生した時間に近い呼び出しおよび実行時間を探します。
修正方法
OCI Functionsのトラブルシューティングを参照してください。

HTTPS (カスタムURL)サブスクリプション確認が受信されませんでした

新しいHTTPS (カスタムURL)サブスクリプションの確認メッセージがないかどうかをトラブルシューティングします。

確認を送信した後、新しいHTTPS (カスタムURL)サブスクリプションは「保留」ステータスのままになります。

サブスクリプションは確認を受信しませんでした。サブスクリプションのエンドポイントがHTTPS (カスタムURL)サブスクリプションの前提条件を満たさないため、HTTPS (カスタムURL)サブスクリプションのエンドポイントは確認を受信しませんでした。たとえば、エンドポイントはパブリックにアクセスできないか、認可されていないヘッダー要件をサポートしていません。

この問題を修正するには、前提条件を満たすエンドポイントを含む新しいサブスクリプションを作成します。

  1. HTTPS (カスタムURL)サブスクリプションの前提条件を満たすエンドポイントを検索します。
  2. 選択したエンドポイントを使用して、新しいHTTPS (カスタムURL)サブスクリプションを作成します
  3. 新しいサブスクリプションを確認します。
    問題のあるエンドポイントを含むサブスクリプションを削除することをお薦めします。