通知の概要

Oracle Cloud Infrastructure Notificationsサービスを使用して、トピックおよびサブスクリプションを使用するメッセージを公開するための通信チャネルを設定します。

通知サービスを使用すると、Oracle Cloud Infrastructureのリソースで何かが起こったことを把握できます。アラーム、イベント・ルールおよびコネクタを使用すると、サポートされているエンドポイント(電子メールやテキスト・メッセージ(SMS)など)を介して、判読可能なメッセージを取得できます。カスタムHTTPSエンドポイントおよびOracle Cloud Infrastructure Functionsを使用して、タスクを自動化することもできます。メッセージを直接公開することもできます。

ヒント

サービスの概要ビデオを視聴してください。

通知の動作

通知サービスを使用すると、トピック およびサブスクリプション を使用してメッセージを公開するための通信チャネルを設定できます。メッセージがトピックに公開されると、通知サービスはトピックのすべてのサブスクリプションにメッセージを送信します。

Standardヘッダー・メタデータ

メッセージを配信する場合、Notificationsでは次のヘッダー・メタデータが追加されます。

すべてのメッセージの場合:

  • Content-Type
  • X-OCI-NS-MessageId
  • X-OCI-NS-TopicOcid
  • X-OCI-NS-TopicName
  • X-OCI-NS-MessageType
  • X-OCI-NS-UnsubscribeURL

確認メッセージの場合:

ノート

HTTPS (カスタムURL)確認URLも参照してください。
  • X-OCI-NS-ConfirmationURL
  • X-OCI-NS-SubscriptionId

メッセージ署名の検証の場合:

  • X-OCI-NS-Signature
  • X-OCI-NS-Timestamp
  • X-OCI-NS-SignatureVersion
  • X-OCI-NS-SigningCertURL

サブスクライバのエンドポイントがメッセージの受信を確認しないと、通知サービスは配信を再試行します。この状況は、エンドポイントがオフラインの場合に発生することがあります。たとえば、電子メール・アドレスの電子メール・サーバーが停止している可能性があります。

配信再試行の詳細

通知では、次のステップに従って、(a)確認の受信、または(b)サブスクリプションの再試行期間が終了するまで、配信を再試行します。デフォルトの再試行期間は2時間です。

  1. 即時の再試行。
  2. 次のタイミングでの、サブスクリプションの再試行期間中の指数関数的バックオフ再試行:
    1. 1分
    2. 2分
    3. 4分
    4. 8分
    5. 16分
    6. 32分
  3. 再試行期間の終了時のメッセージの破棄。

サブスクリプションの再試行期間を変更するには、サブスクリプションの配信ポリシーの更新を参照してください。

通知の概念

通知の作業には、次の概念が必要です。

わかりやすい書式設定
メッセージの読みやすさを向上させる設定。

サポートされているサブスクリプション・プロトコル:

サポートされているメッセージ・タイプ:

メッセージ
トピックに公開されるコンテンツ。各メッセージは、サブスクリプション当たり少なくとも1回配信されます。電子メールとして送信されるすべてのメッセージには、関連トピックからサブスクライブ解除するためのリンクが含まれています。
通知
アラームやイベント・ルールなどのメッセージを送信するための構成。各メッセージは、指定されたトピックサブスクリプションに送信されます。
使用可能な通知のタイプは次のとおりです。
通知を作成した後は、通常どおり管理できます。たとえば、通知がアラームの場合、コンソール「アラーム」ページを使用して管理します。
サブスクリプション
トピックのエンドポイント。公開されたメッセージは、トピックの各サブスクリプションに送信されます。
サポートされているサブスクリプション・プロトコル:
  • 電子メール:

    サブスクリプションの親トピック メッセージ を公開する場合に電子メール・メッセージを送信します。

    ノート

    電子メール配信との統合に関するベスト・プラクティスに従います。肯定的な電子メール送信者評価の保守および電子メールのカスタム・ドメインの設定を参照してください。
    メッセージの内容と表示は、メッセージ・タイプによって異なります。alarm messagesevent messagesおよびconnector messagesを参照してください。

    一部のメッセージ・タイプでは、フレンドリな書式設定が使用されます。

  • ファンクション:
    サブスクリプションの親トピックメッセージを公開する場合に指定したファンクションを実行します。たとえば、関連するアラームがトリガーされたときに、ファンクションを実行してVMをサイズ変更します。
  • HTTPS (カスタムURL):

    サブスクリプションの親トピック メッセージ を公開する場合に指定した情報を送信します。

  • PagerDuty:
    サブスクリプションの親トピック メッセージ を公開する場合にデフォルトでPagerDutyインシデントを作成します。
  • Slack
    サブスクリプションの親トピック メッセージ を公開する場合に、デフォルトで指定のSlackチャネルにメッセージを送信します。
    メッセージの内容と表示は、メッセージ・タイプによって異なります。アラーム・メッセージイベント・メッセージおよびコネクタ・メッセージを参照してください。
  • SMS:
    メッセージをサブスクリプションの親トピックに公開すると、ショート・メッセージ・サービス(SMS)を使用して、指定された電話番号にテキスト・メッセージが送信されます。サポートされるエンドポイント・フォーマット: E.164形式
    ノート

    SMSメッセージが別の国の電話番号から送信される場合は、国際SMS機能が必要です。より多くのユーザーがローカルの電話番号からSMSメッセージを受信できるよう、サポートされる国を継続的に増やしていきます。

    SMSサブスクリプションは、Oracle Cloud Infrastructureサービス(お知らせモニタリングおよびコネクタ・ハブ)によって送信されたメッセージに対してのみ有効です。サポートされていないサービスから送信されたSMSメッセージは削除されます。原因: SMSに使用されているサポートされていないリソースを参照してください。

    通知サービスは、事前に構成された番号のプールからSMSメッセージを配信します。複数の番号からSMSメッセージを受信する場合があります。

    メッセージの内容と表示は、メッセージ・タイプによって異なります。SMSアラーム・メッセージおよびSMSコネクタ・メッセージを参照してください。

    使用可能な国とリージョン

    通知を使用して、次の国およびリージョンにSMSメッセージを送信できます:

    国または地域 ISOコード
    オーストラリア AU
    ブラジル BR
    カナダ CA
    チリ CL
    中国 CN
    コスタリカ CR
    クロアチア HR
    チェコ CZ
    フランス FR
    ドイツ DE
    ハンガリー HU
    インド IN
    アイルランド IE
    イスラエル IL
    日本 JP
    リトアニア LT
    メキシコ MX
    オランダ語 NL
    ニュージーランド NZ
    ノルウェー NO
    フィリピン PH
    ポーランド PL
    ポルトガル PT
    ルーマニア RO
    サウジアラビア SA
    シンガポール SG
    南アフリカ ZA
    韓国 KR
    スペイン ES
    スウェーデン SE
    スイス CH
    ウクライナ UA
    米国 AE
    イギリス GB
    アメリカ US
トピック
メッセージサブスクリプションに送信するための通信チャネル。各トピック名はテナンシ間で一意です。
ノート

Oracle Cloud Infrastructure Notificationsサービスによって電子メールとして送信されるメッセージは、処理され、U.S.ベースのリージョンのOracleリソースを介して配信されます。

メッセージの公開と配信のフロー

リソースは、構成されたトピックにメッセージを公開します。通知は、トピックのアクティブなサブスクリプションにメッセージを配信します。

メッセージを送信できるリソースには、アラーム、お知らせサブスクリプション、イベント・ルール、コネクタおよびコンテキスト通知(アラームおよびイベント・ルール)が含まれます。(ユーザー、サービスまたはアプリケーションは、直接公開を介してメッセージを送信することもできます。)

たとえば、トピックにメッセージを送信するように構成されたアラームについて考えてみます。このトピックでは、電子メール、SlackおよびSMSサブスクリプションについて説明します。アラーム・トリガー・ルールに違反すると、アラームはトピックにメッセージをパブリッシュします。通知は、トピックのアクティブなサブスクリプションにメッセージを配信します。この例では、Slackサブスクリプションはまだ確認されていないため、保留中です。通知はトピック内の唯一のアクティブなサブスクリプションであるため、電子メールおよびSMSサブスクリプションにのみメッセージが配信されます。

公開済および配信済メッセージをトラッキングするメトリックについては、使用可能なメトリック: oci_notificationを参照してください。

警告

アラームのトリガー・ルールに違反すると、アラームはアラーム・メッセージを構成済のトピックに送信します。通知は、そのトピックのアクティブなサブスクリプションにメッセージを配信します。アラームの管理を参照してください。

コンテキスト通知にはアラームを含めることができます。

この図は、アラームのコンテキストでの通知を示しています。

アナウンスメント・サブスクリプション

お知らせサブスクリプションは、コンソールのお知らせメッセージを構成済のトピックに送信します。次に、通知は、そのトピックのアクティブなサブスクリプションにメッセージを配信します。

この図は、お知らせサブスクリプションのコンテキストでの通知を示しています。

イベント・ルール

トリガーされると、イベント・ルールイベント・メッセージを構成済のトピックに送信します。通知は、そのトピックのアクティブなサブスクリプションにメッセージを配信します。イベントのルールの管理を参照してください。

コンテキスト通知には、イベント・ルールを含めることができます。

この図は、イベント・ルールのコンテキストにおける通知を示しています。

コネクタ

コネクタは、コネクタ・メッセージを構成済のトピックに送信します。通知は、そのトピックのアクティブなサブスクリプションにメッセージを配信します。コネクタの管理を参照してください。

この図は、コネクタのコンテキストにおける通知を示しています。

直接公開

ユーザー(またはサービスまたはアプリケーション)は、メッセージを構成済のトピックに送信します。通知は、そのトピックのアクティブなサブスクリプションにメッセージを配信します。トピックへのメッセージの公開を参照してください。

この図は、メッセージを直接公開するために使用される通知を示しています。

ファンクションイベントを使用した自動化の作成

ファンクション・サブスクリプションを含むトピックにメッセージを公開することで、自動化を作成できます。ファンクション・サブスクリプションの例は、シナリオA: 仮想マシンの自動サイズ変更を参照してください。

また、イベント・タイプ、ルールおよびアクションを使用して、トピックおよびサブスクリプション(通知リソース)の状態変更に基づいて自動化を作成することもできます。

可用性

通知サービスは、すべてのOracle Cloud Infrastructure商用リージョンで使用できます。使用可能なリージョンのリストと、関連する場所、リージョン識別子、リージョン・キーおよび可用性ドメインは、リージョンおよび可用性ドメインについてを参照してください。

電子メール・メッセージ送信のサービス比較

通知サービスまたは電子メール配信サービスを使用して電子メール・メッセージを送信するかどうかを決定する際には、次のサービス機能を使用することを検討してください。電子メール配信の詳細は、電子メール配信サービスの概要を参照してください。

サービス機能 通知サービス 電子メール配信サービス
電子メールを送信する前に確認が必要。 はい いいえ
署名などの電子メール装飾を許可。 はい いいえ
RAW電子メール・メッセージを許可。 いいえ はい
MIMEアタッチメントをサポート。 いいえ

はい

失敗した電子メール配信の特別な処理をサポート。 いいえ

はい

小さいメッセージ(32KB未満、64KBの制限付き)の場合に課金。 はい いいえ
大きいメッセージ(32KBを超える、2MBの制限付き)の場合に課金。 いいえ はい

リソース識別子

ほとんどのタイプのOracle Cloud Infrastructureリソースには、Oracle Cloud ID (OCID)と呼ばれるOracleによって割り当てられた一意の識別子があります。OCIDのフォーマットおよびリソースを識別するその他の方法の詳細は、リソース識別子を参照してください。

通知へのアクセス方法

コンソールまたは通知REST APIを使用して通知サービスにアクセスできます。コンソール、CLIおよびAPIのための手順は、このガイド全体に含まれています。使用可能なSDKのリストは、ソフトウェア開発キットとコマンドライン・インタフェースを参照してください。

コンソール: コンソールを使用して通知にアクセスするには、サポートされているブラウザを使用する必要があります。コンソールのサインイン・ページに移動するには、このページの上部にあるナビゲーション・メニューを開き、「Infrastructureコンソール」をクリックします。クラウド・テナント、ユーザー名およびパスワードの入力を求められます。ナビゲーション・メニューを開き、「開発者サービス」をクリックします「アプリケーション統合」で、「通知」をクリックします。

API: APIを介して通知にアクセスするには、通知APIを使用します。

CLI: 通知のコマンドライン・リファレンスを参照してください。

認証と認可

Oracle Cloud Infrastructureの各サービスは、すべてのインタフェース(コンソール、SDKまたはCLI、およびREST API)の認証および認可のためにIAMと統合されています。

組織の管理者は、どのユーザーがどのサービスとリソースにアクセスできるか、およびアクセスのタイプを制御する、グループコンパートメントおよびポリシーを設定する必要があります。たとえば、ポリシーは、新規ユーザーの作成、クラウド・ネットワークの作成と管理、インスタンスの起動、バケットの作成、オブジェクトのダウンロードなどを実行できるユーザーを制御します。詳細は、ポリシーの開始を参照してください。異なる各サービスに対するポリシーの記述の詳細は、ポリシー・リファレンスを参照してください。

会社が所有するOracle Cloud Infrastructureリソースを使用する必要がある通常のユーザー(管理者ではない)の場合は、ユーザーIDを設定するよう管理者に連絡してください。管理者は、使用する必要があるコンパートメントを確認できます。

管理者: グループに通知リソースへのアクセス権を付与する共通ポリシーについては、IAMポリシー(通知ページの保護)を参照してください。

通知における制限

適用可能な制限のリストと制限拡大のリクエスト方法は、サービス制限を参照してください。リソースまたはリソース・ファミリにコンパートメント固有の制限を設定するために、管理者は、コンパートメント割当てを使用できます。

メッセージの公開の制限(PublishMessage操作)

制限はすべてテナンシ単位です。

制限タイプ 制限量
リクエスト当たりのメッセージ・サイズ 64KB
HTTPベース・プロトコルのエンドポイント当たりのメッセージ配信率("http:"または"https:"で始まるエンドポイント) 60メッセージ/分
電子メール・プロトコルのエンドポイント当たりのメッセージ配信率 10メッセージ/分
1分当たりのメッセージ(1分当たりのトランザクション(TPM)とも呼ばれる) 60/トピック

セキュリティ

通知のセキュリティについて学習します。

トピックおよびサブスクリプションへのアクセス権を付与します。「通知の保護」を参照してください。