Nachrichten von Autonomous Database an OCI Notifications Service senden

Beschreibt, wie Sie Nachrichten von Autonomous Database an ein OCI Notifications-Servicethema senden.

Die Abonnements, die Sie mit dem OCI Notifications-Service konfigurieren, bestimmen Endpunkte für ein Thema. Veröffentlichte Nachrichten werden an jedes Abonnement für ein Thema gesendet. Es gibt eine Reihe von unterstützten Abonnementprotokollen, darunter: E-Mail, Funktion und Slack. Weitere Informationen finden Sie unter Überblick über Notifications.

Wenn Sie den OCI Notifications-Service mit dem Package DBMS_CLOUD_NOTIFICATION verwenden, wird nur die Prozedur DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE unterstützt (die Prozedur DBMS_CLOUD_NOTIFICATION.SEND_DATA wird nicht unterstützt).

Senden von OCI-Benachrichtigungen aus Autonomous Database vorbereiten

Um Benachrichtigungen an Themen im OCI Notifications-Service zu senden, erstellen Sie zunächst Themen und Abonnements in OCI Notifications.

Bevor Sie Nachrichten mit OCI Notifications senden, müssen Sie Folgendes ausführen:

  1. Erstellen Sie ein OCI Notifications-Thema.

    Weitere Informationen zum Erstellen eines Themas finden Sie unter Themen erstellen.

  2. Erstellen Sie OCI Notifications-Abonnements.

    Weitere Informationen zum Erstellen eines Abonnements finden Sie unter Abonnement erstellen.

    Die von Ihnen konfigurierten Abonnements bestimmen Endpunkte für ein Thema. Veröffentlichte Nachrichten werden an jedes Abonnement für ein Thema gesendet. Es gibt eine Reihe von unterstützten Abonnementprotokollen, darunter: E-Mail, Funktion und Slack.

    Weitere Informationen finden Sie unter Überblick über Notifications.

  3. Nachdem Sie die OCI Notifications-Abonnements erstellt haben, bestätigen Sie die Abonnements.

    Sie können Nachrichten nur in bestätigten Abonnements veröffentlichen. Einzelheiten zur Bestätigung von Abonnements finden Sie unter Abonnement bestätigen.

Nachrichten an OCI Notifications-Thema senden

Beschreibt die Schritte zum Senden von Nachrichten an ein OCI Notifications-Servicethema.

  1. Erstellen Sie ein Thema und Abonnements.
  2. Erstellen Sie ein Zugangsdatenobjekt für den Zugriff auf den OCI Notifications-Service von Autonomous Database.

    Sie können entweder Zugangsdaten für den Oracle Cloud Infrastructure-Signaturschlüssel oder Zugangsdaten für den Resource Principal verwenden.

    • Erstellen Sie Zugangsdaten für Oracle Cloud Infrastructure-Signaturschlüssel. Beispiel:

      BEGIN
         DBMS_CLOUD.CREATE_CREDENTIAL (
             credential_name => ‘OCI_KEY_CRED’,
             user_ocid       => ‘ocid1.user.oc1..aaaaaaaauq54mi7zdyfhw33ozkwuontjceel7fok5nq3bf2vwetkpqsoa’,
             tenancy_ocid    => ‘ocid1.tenancy.oc1..aabbbbbbaafcue47pqmrf4vigneebgbcmmoy5r7xvoypicjqqge32ewnrcyx2a’,
             private_key     => ‘MIIEogIBAAKCAQEAtUnxbmrekwgVac6FdWeRzoXvIpA9+0r1.....wtnNpESQQQ0QLGPD8NM//JEBg=’,
             fingerprint     => ‘f2:db:f9:18:a4:aa:fc:94:f4:f6:6c:39:96:16:aa:27’);
      END;
      /

      Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.

    • Erstellen Sie Zugangsdaten und Policys für Resource Principal.

      Weitere Informationen finden Sie unter Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen nutzen.

  3. Nachricht senden.
    • Senden Sie eine Nachricht mit den Zugangsdaten für den Oracle Cloud Infrastructure-Signaturschlüssel:

      BEGIN
          DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
              provider         => 'oci',
              credential_name  => 'OCI_KEY_CRED',
              message          => 'Text message',
              params           => json_object('topic_ocid' value 'oci********pa',
                                              'title'value 'Title for message'));
      END;
      / 
    • Nachricht mit Zugangsdaten für Resource Principal senden:

      BEGIN
          DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
              provider         => 'oci',
              credential_name  => 'OCI$RESOURCE_PRINCIPAL',
              message          => 'Text message',
              params           => json_object('topic_ocid' value 'oci********pa',
                                              'title'      value 'Title for message'));
      END;
      / 

    Beim oci-Provider gibt es verschiedene mögliche Endpunkte für eine Nachricht, basierend auf den Abonnements. Der Parameter title wird für verschiedene Abonnementprotokolle unterschiedlich behandelt:

    • E-Mail: title gibt die Betreffzeile der Nachricht an.
    • Slack: Der Wert title wird nicht verwendet. Wenn sie enthalten ist, wird der Wert ignoriert.

Weitere Informationen finden Sie unter Prozedur SEND_MESSAGE.

Einschränkungen für Benachrichtigungen mit OCI Notifications-Service

Es gibt Einschränkungen, wenn Sie DBMS_CLOUD_NOTIFICATION zum Senden von Nachrichten verwenden und den oci-Provider (OCI-Benachrichtigungsservice) verwenden.

Dabei gelten die folgenden Einschränkungen.

  • Grenzwert für Nachrichtengröße: Die maximale Nachrichtengröße pro Anforderung beträgt 64 KB. Nachrichten, die diese Größe überschreiten, können nicht innerhalb einer einzigen Anforderung gesendet oder verarbeitet werden.
  • Ratenlimit für die Nachrichtenzustellung: Je nach verwendetem Protokoll gibt es unterschiedliche Ratenlimits für die Nachrichtenzustellung.
    • email-Protokoll: Das Limit beträgt 10 Nachrichten pro Minute pro Endpunkt.

    Diese Einschränkung kann sich auf die Geschwindigkeit auswirken, mit der Nachrichten übertragen und empfangen werden können.

  • Transaktionslimit pro Minute (TPM) pro Mandant: Für diesen Vorgang gibt es ein TPM-Limit von 60 pro Thema. Dieses Limit gibt die maximale Anzahl von Nachrichten pro Minute an, die für ein bestimmtes Thema verarbeitet oder verarbeitet werden können. Eine Überschreitung dieses Limits kann dazu führen, dass Nachrichten nicht langsamer verarbeitet oder verarbeitet werden.
  • Die Autonomous Database-Instanz, die Zugangsdaten, wenn Sie Benutzerzugangsdaten verwenden, und das Abonnementthema müssen sich alle in derselben Region befinden.

Weitere Informationen zu OCI Notifications finden Sie unter Überblick über Notifications.