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

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

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

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

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

次に、この問題の考えられる原因と処置を示します。

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

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

たとえば、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メール・アドレス

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

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

診断方法

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

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

原因: コンパートメントに対するモニタリング権限がありません

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

診断方法

トピックの詳細を取得して、そのコンパートメントがOracle Platform Services管理対象コンパートメント(ManagedCompartmentForPaasという名前)かどうかを確認します。

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

サブスクリプション消失

サブスクリプションが消失した可能性があるイベントを識別します。

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

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

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

処置: 登録解除イベントと削除イベントの識別

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

      古い登録解除イベントおよび削除イベントをフィルタするには、「GET」を選択します(2023年7月18日より前のメッセージに使用)。
    • リソース: 「サブスクリプション」を選択します。
    • イベント・タイプ: 次のアイテムを選択します:
      • 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関数のトラブルシューティングを参照してください。

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

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

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

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

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

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