Envoi de messages au service OCI Notifications à partir d'Autonomous Database

Explique comment envoyer des messages à partir d'Autonomous Database vers un sujet de service OCI Notifications.

Les abonnements que vous configurez avec le service OCI Notifications déterminent les adresses d'un sujet. Les messages publiés sont envoyés à chaque abonnement pour un sujet donné. Il existe un certain nombre de protocoles d'abonnement pris en charge, notamment les courriels, les fonctions et Slack. Pour plus d'informations, reportez-vous à Présentation de Notifications.

Lorsque vous utilisez le service OCI Notifications avec le package DBMS_CLOUD_NOTIFICATION, seule la procédure DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE est prise en charge (la procédure DBMS_CLOUD_NOTIFICATION.SEND_DATA n'est pas prise en charge).

Préparation de l'envoi de notifications OCI à partir d'Autonomous Database

Pour envoyer des notifications à des sujets dans le service OCI Notifications, commencez par créer des sujets et des abonnements dans OCI Notifications.

Avant d'envoyer des messages avec OCI Notifications, procédez comme suit :

  1. Créez un sujet OCI Notifications.

    Pour plus d'informations sur la création d'un sujet, reportez-vous à Création d'un sujet.

  2. Créez des abonnements OCI Notifications.

    Pour plus de détails sur la création d'un abonnement, reportez-vous à Création d'un abonnement.

    Les abonnements que vous configurez déterminent les adresses d'un sujet. Les messages publiés sont envoyés à chaque abonnement pour un sujet donné. Il existe un certain nombre de protocoles d'abonnement pris en charge, notamment les courriels, les fonctions et Slack.

    Pour plus d'informations, reportez-vous à Présentation de Notifications.

  3. Une fois les abonnements OCI Notifications créés, confirmez-les.

    Vous pouvez uniquement publier des messages sur des abonnements confirmés. Pour plus d'informations sur la confirmation des abonnements, reportez-vous à Confirmation d'un abonnement.

Envoyer des messages à un sujet OCI Notifications

Décrit les étapes d'envoi de messages à un sujet de service OCI Notifications.

  1. Créez un sujet et créez des abonnements.
  2. Créez un objet d'informations d'identification pour accéder au service OCI Notifications à partir d'Autonomous Database.

    Vous pouvez utiliser les informations d'identification de clé de signature Oracle Cloud Infrastructure ou les informations d'identification de principal de ressource.

    • Créez des informations d'identification de clé de signature Oracle Cloud Infrastructure. Par exemple :

      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;
      /

      Pour plus d'informations, reportez-vous à Procédure CREATE_CREDENTIAL.

    • Créez des informations d'identification et des stratégies de principal de ressource.

      Pour plus d'informations, reportez-vous à Utilisation du principal de ressource pour accéder à des ressources Oracle Cloud Infrastructure.

  3. Envoyer un message.
    • Envoyez un message à l'aide des informations d'identification de clé de signature Oracle Cloud Infrastructure :

      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;
      / 
    • Envoyez un message avec les informations d'identification du principal de ressource :

      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;
      / 

    Avec le fournisseur oci, il existe différentes adresses possibles pour un message, en fonction des abonnements. Le paramètre title est traité différemment pour les différents protocoles d'abonnement :

    • email : title indique l'objet du message.
    • Slack : la valeur title n'est pas utilisée. Si elle est incluse, la valeur est ignorée.

Pour plus d'informations, reportez-vous à Procédure SEND_MESSAGE.

Limites relatives aux notifications avec OCI Notifications Service

Certaines limites s'appliquent lorsque vous utilisez DBMS_CLOUD_NOTIFICATION pour envoyer des messages et que vous utilisez le fournisseur oci (service OCI Notifications).

Notez les limitations suivantes :

  • Limite de taille de message : la limite de taille de message par demande est de 64 ko. Les messages dépassant cette taille ne peuvent pas être envoyés ou traités dans une seule demande.
  • Limite du taux de distribution des messages : il existe différentes limites de taux de distribution des messages en fonction du protocole utilisé.
    • Protocole email : la limite est de 10 messages par minute et par adresse.

    Cette restriction peut avoir un impact sur la vitesse à laquelle les messages peuvent être transmis et reçus.

  • Nombre maximal de transactions par minute (TPM) par location : il existe une limite de TPM de 60 par sujet pour cette opération. Cette limite représente le nombre maximal de messages par minute pouvant être traités ou traités pour un sujet donné. Si vous dépassez cette limite, les messages ne seront pas traités ou traités plus lentement.
  • L'instance Autonomous Database, les informations d'identification et de connexion, si vous utilisez des informations d'identification utilisateur, et le sujet d'abonnement doivent tous se trouver dans la même région.

Pour plus d'informations sur OCI Notifications, reportez-vous à Présentation de Notifications.