Interrogation des mesures de courriel

Vous pouvez accéder aux mesures de courriel et les analyser à l'aide de la console Web, de l'API ou de l'interface de ligne de commande.

Le cœur de ce processus consiste à créer une interrogation de mesures. Le moyen le plus simple de créer ces interrogations est l'explorateur de mesures dans la console Web OCI. L'explorateur de mesures vous permet de sélectionner des filtres, de construire la syntaxe d'interrogation pour vous et d'utiliser cette syntaxe dans l'API ou l'interface de ligne de commande pour rechercher des mesures.

Les interrogations de mesure utilisent le langage MQL (Oracle Monitoring Query Language) pour spécifier :

  • Mesures à extraire
  • Intervalle pour l'agrégation des données
  • Dimension(s) pour limiter les données
  • Critères de regroupement
  • Fonction de statistique à appliquer aux données de chaque intervalle
  • Prédicat pour filtrer les résultats par seuil ou absence de données

Pour plus d'informations, voir Informations de référence sur les mesures du service de transmission de messages, qui répertorie toutes les mesures disponibles du service de transmission de messages et leurs dimensions.

Création d'une interrogation dans l'explorateur de mesures

  1. Dans la liste des compartiments, sélectionnez le compartiment ou sélectionnez racine pour toutes les locations.
  2. Dans les options d'espace de noms de mesure, sélectionnez oci_emaildelivery pour les mesures du service de transmission de messages.
  3. Sélectionnez un nom de mesure, par exemple accepté, reporté, retourné, plaintes, ouvert ou une autre mesure disponible. Seules les mesures contenant des données sont affichées.
  4. Sélectionnez un intervalle de temps (1 minute par défaut). Vous pouvez sélectionner l'heure entière, le jour entier ou définir un intervalle personnalisé en minutes ou en heures.
  5. Sélectionnez une statistique (la valeur par défaut est Moyenne; d'autres options incluent des centiles tels que Pxx).
  6. Sélectionnez une ou plusieurs dimensions :
    • Sélectionnez un nom de dimension, par exemple resourceDomain (domaine d'envoi de courriel) ou resourceId (expéditeur approuvé).
    • En fonction de votre choix, sélectionnez une valeur de dimension (domaine ou expéditeur) dans la liste affichée.
  7. Sélectionnez Mettre à jour le graphique. L'interrogation MQL s'affiche dans le panneau de gauche. Le graphique ci-dessus affiche les données obtenues.
  8. Pour créer une alarme basée sur l'interrogation, sélectionnez Créer une alarme. Vous pouvez utiliser les services de notification ou de diffusion en continu pour envoyer des alertes.

Exemples d'interrogations de mesures

Données requises Interrogation (intervalle de temps distinct de l'interrogation)
Tous les courriels soumis par le service, par minute EmailsAccepted[1m].count()
Tous les courriels soumis par le service, par heure EmailsAccepted[1h].count()
Courriels relayés (c'est-à-dire transmis avec succès au fournisseur de courriel du destinataire) par tous les expéditeurs sales.mydomain.com, par jour EmailsRelayed[1d]{resourceDomain = "mydomain.com"}.count()
Nombre de non-transmissions définitives, par jour EmailsHardBounced[1d].count()
Nombre quotidien de courriels envoyés par l'expéditeur marketing@mydomain.com qui sont supprimés (bloqués), car le destinataire figure sur la liste de suppression. EmailsSuppressed[1d]{resourceId = "<sender-ocid>"}.count()

Note : La dimension resourceId nécessite l'OCID de l'expéditeur approuvé et non l'adresse de courriel. Vous pouvez obtenir l'OCID de l'expéditeur à partir de la page Expéditeurs approuvés.

Courriels ouverts pour les expéditeurs mydomain.com, par jour EmailsOpened[1d].count()
Note

Les mesures ne peuvent pas être regroupées par une dimension d'en-tête personnalisée. Si vous en avez besoin, utilisez l'intégration du service de journalisation. Pour obtenir des instructions, voir Recherche dans le journal des courriels.

Interrogation des mesures du service de transmission de messages à l'aide de l'API

Pour accéder aux mesures de transmission de messages à l'aide de l'API, utilisez la méthode SummarizeMetricsData du service de surveillance. Comme pour l'explorateur de mesures, cette méthode nécessite un OCID de compartiment et un objet SummarizeMetricsDataDetails contenant l'intervalle de dates, l'espace de noms (utilisez oci_emaildelivery pour les mesures du service de transmission de messages) et une interrogation MQL.

Note

Lors du filtrage par dimensions de mesure, telles que resourceDomain ou resourceId, MQL nécessite des guillemets doubles. Si vous utilisez Python ou un langage similaire, placez la chaîne MQL entre guillemets simples dans votre code afin que vous puissiez conserver les guillemets doubles requis autour des valeurs dans MQL. Voir les exemples de code ci-dessous.

Le tableau suivant répertorie les exemples de liste de mesures python et les interrogations de données. Remplacez <compartment_ocid> par l'OCID de votre compartiment ou de votre location lors de l'interrogation dans le compartiment racine.

Données requises Échantillon de code (Python)

Liste des mesures disponibles pour l'espace de noms "oci_emaildelivery", triées par nom dans l'ordre croissant

import oci

config = oci.config.from_file()
monitoring_client = oci.monitoring.MonitoringClient(config)

list_metrics_response = monitoring_client.list_metrics( compartment_id="ocid1.compartment.oc1..aaaaaaaawqhwudf3pag5gohpzslu7tn4rl2d32bufkgmfzzr4wq7aznylpeq",
list_metrics_details=oci.monitoring.models.ListMetricsDetails(
namespace="oci_emaildelivery",
sort_by="NAME",
sort_order="ASC"
)
)

Les guillemets doubles encadrent toutes les valeurs de paramètre, car aucune interrogation ne contient de guillemets doubles.

Nombre de courriels acceptés par minute dans une fenêtre d'une heure (12:00-13:00 le 2 mars 2023) pour tous les expéditeurs et domaines d'envoi

import oci

config = oci.config.from_file()
monitoring_client = oci.monitoring.MonitoringClient(config)

summarize_metrics_data_response = monitoring_client.summarize_metrics_data(
compartment_id="ocid1.compartment.oc1..aaaaaaaawqhwudf3pag5gohpzslu7tn4rl2d32bufkgmfzzr4wq7aznylpeq",
summarize_metrics_data_details=oci.monitoring.models.SummarizeMetricsDataDetails(
namespace="oci_emaildelivery",
query="EmailsAccepted[1m].count()",
start_time=datetime.strptime("2023-03-02T12:00:00.000Z", "%Y-%m-%dT%H:%M:%S.%fZ"),
end_time=datetime.strptime("2023-03-02T13:00:00.000Z", "%Y-%m-%dT%H:%M:%S.%fZ")
)
)

Les guillemets doubles encadrent toutes les valeurs de paramètre, car aucune interrogation ne contient de guillemets doubles.

Nombre d'ouvertures par jour pendant une période de 14 jours pour tous les courriels envoyés par un expéditeur approuvé particulier

import oci

config = oci.config.from_file()
monitoring_client = oci.monitoring.MonitoringClient(config)

summarize_metrics_data_response = monitoring_client.summarize_metrics_data(
compartment_id='ocid1.compartment.oc1..aaaaaaaawqhwudf3pag5gohpzslu7tn4rl2d32bufkgmfzzr4wq7aznylpeq',
summarize_metrics_data_details=oci.monitoring.models.SummarizeMetricsDataDetails(
namespace='oci_emaildelivery',
query='EmailsOpened[1d]{resourceId = "ocid1.emailsender.oc1.uk-london-1.amaaaaaaooyoulaa6f5dubcaci7stvzf6vdli6wpzw4mtapdeymtgqokkljq"}.count()',
start_time=datetime.strptime('2023-03-01T00:00:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ'),
end_time=datetime.strptime('2023-03-15T00:00:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')
)
)

Guillemets simples utilisés autour des arguments dans les chaînes Python afin que vous puissiez utiliser des guillemets doubles comme l'exige l'interrogation MQL pour les valeurs resourceDomain.

Nombre d'ouvertures par jour pendant une période de 14 jours pour tous les courriels envoyés par un expéditeur approuvé particulier

import oci

config = oci.config.from_file()
monitoring_client = oci.monitoring.MonitoringClient(config)

summarize_metrics_data_response = monitoring_client.summarize_metrics_data(
compartment_id='ocid1.compartment.oc1..aaaaaaaawqhwudf3pag5gohpzslu7tn4rl2d32bufkgmfzzr4wq7aznylpeq',
summarize_metrics_data_details=oci.monitoring.models.SummarizeMetricsDataDetails(
namespace='oci_emaildelivery',
query='EmailsOpened[1d]{resourceId = "ocid1.emailsender.oc1.uk-london-1.amaaaaaaooyoulaa6f5dubcaci7stvzf6vdli6wpzw4mtapdeymtgqokkljq"}.count()',
start_time=datetime.strptime('2023-03-01T00:00:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ'),
end_time=datetime.strptime('2023-03-15T00:00:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')
)
)

Guillemets simples utilisés autour des arguments dans les chaînes Python afin que vous puissiez utiliser des guillemets doubles comme l'exige l'interrogation MQL pour les valeurs resourceDomain.