Ajout de la journalisation aux déploiements d'API
Découvrez comment ajouter des politiques de journalisation aux spécifications d'API que vous avez créées précédemment avec le service de passerelle d'API.
Ayant créé une passerelle d'API et déployé une ou plusieurs API sur cette dernière, il y aura probablement des occasions où vous aurez besoin de voir des détails supplémentaires sur le flux de trafic entrant et sortant de la passerelle d'API. Par exemple, il se peut que vous vouliez vérifier les réponses retournées aux clients d'API ou résoudre les erreurs. Vous pouvez spécifier que le service Passerelle d'API stocke les informations sur les demandes et les réponses transférées dans une passerelle d'API ainsi que les informations sur le traitement dans une passerelle d'API, en tant que journaux dans le service Journalisation pour Oracle Cloud Infrastructure.
- Journaux d'accès, qui enregistrent un sommaire de toutes les demande et réponses transférées par la passerelle d'API vers et à partir d'un déploiement d'API. Pour plus d'informations sur le contenu des journaux d'accès, voir Journal d'accès de déploiement d'API.
- Journaux d'exécution, qui enregistrent les informations sur le traitement dans la passerelle d'API pour un déploiement d'API. Pour plus d'informations sur le contenu des journaux d'exécution, voir Journal d'exécution de déploiement d'API. Vous pouvez spécifier un niveau de journal pour les journaux d'exécution comme l'un des niveaux suivants :
- Informations, pour enregistrer un sommaire de toutes les étapes de traitement.
- Avertissement, pour enregistrer uniquement les erreurs transitoires qui se produisent lors du traitement. Par exemple, la réinitialisation d'une connexion.
- Erreur, pour enregistrer uniquement les erreurs persistantes qui se produisent lors du traitement. Par exemple, une erreur interne ou un appel à une fonction qui retourne un message 404.
Vous pouvez définir un niveau de journal d'exécution pour un déploiement d'API et également définir différents niveaux de journal d'exécution pour chaque route individuelle afin de remplacer le niveau de journal d'exécution hérité du déploiement d'API.
Vous pouvez ajouter la journalisation à une spécification de déploiement d'API comme suit :
- En utilisant la console.
- En modifiant un fichier JSON.
Utilisation de la console pour ajouter la journalisation
Utilisation de la console pour configurer et activer les journaux dans le service Journalisation pour Oracle Cloud Infrastructure
Pour configurer et activer les journaux de déploiement d'API à l'aide de la console pour stocker les journaux dans le service Journalisation pour Oracle Cloud Infrastructure :
-
Créez ou mettez à jour un déploiement d'API à l'aide de la console, sélectionnez l'option À partir de zéro et entrez les détails dans la page Informations de base.
Pour plus d'informations, voir Déploiement d'une API sur une passerelle d'API en créant un déploiement d'API et Mise à jour d'une passerelle d'API.
-
Dans la section Politiques de journalisation d'API de la page Informations de base, spécifiez l'une des options suivantes en tant que niveau de journal d'exécution pour enregistrer les informations sur le traitement dans la passerelle d'API :
- Informations : Enregistrer un sommaire de toutes les étapes de traitement. Il s’agit de l’option par défaut.
- Avertissement : Enregistrer uniquement les erreurs transitoires qui se produisent lors du traitement. Par exemple, la réinitialisation d'une connexion.
- Erreur : Enregistrer uniquement les erreurs persistantes qui se produisent lors du traitement. Par exemple, une erreur interne ou un appel à une fonction qui retourne un message 404.
-
Sélectionnez Suivant deux fois pour entrer les détails de chaque route du déploiement d'API dans la page Routes et sélectionnez Afficher les politiques de journalisation de route.
-
Spécifiez l'une des options suivantes comme Remplacement de niveau du journal d'exécution qui s'applique à une route individuelle (pour remplacer le niveau de journal d'exécution hérité du déploiement d'API) :
- Informations : Enregistrer un sommaire de toutes les étapes de traitement.
- Avertissement : Enregistrer uniquement les erreurs transitoires qui se produisent lors du traitement. Par exemple, la réinitialisation d'une connexion.
- Erreur : Enregistrer uniquement les erreurs persistantes qui se produisent lors du traitement. Par exemple, une erreur interne ou un appel à une fonction qui retourne un message 404.
- Sélectionnez Suivant pour vérifier les détails que vous avez entrés pour le déploiement d'API.
- Sélectionnez Créer ou enregistrer les modifications pour créer ou mettre à jour le déploiement d'API.
Le déploiement d'API est affiché dans la page Détails du déploiement d'API.
- Sous Ressources, sélectionnez Journaux, puis sélectionnez le curseur Activer la journalisation pour créer et activer un nouveau journal de déploiement d'API dans le service Oracle Cloud Infrastructure Logging dans le panneau d'entrée Créer un journal :
- Compartiment : Par défaut, le compartiment courant.
- Groupe de journaux : Par défaut, le premier groupe de journaux du compartiment.
- Catégorie de journal : Sélectionnez Exécution ou Accès.
- Nom du journal : Par défaut
, <deployment-name>_execution
ou<deployment-name>_access
, selon la catégorie que vous sélectionnez.
Pour plus d'informations, voir Activation de la journalisation pour une ressource.
- Sélectionnez Activer le journal pour créer le nouveau journal et l'activer.
Modification d'un fichier JSON pour ajouter la journalisation
Modification d'un fichier JSON pour définir le niveau du journal d'exécution pour les journaux stockés dans le service Journalisation pour Oracle Cloud Infrastructure
Pour modifier la spécification de déploiement d'API dans un fichier JSON afin de définir le niveau de journal pour les journaux d'exécution stockés dans le service Journalisation pour Oracle Cloud Infrastructure :
-
À l'aide de votre éditeur JSON privilégié, modifiez la spécification de déploiement d'API existante dans laquelle vous voulez définir le niveau de journal pour les journaux d'exécution stockés dans Oracle Cloud Infrastructure Logging, ou créez une spécification de déploiement d'API (voir Création d'une spécification de déploiement d'API).
Au minimum, la spécification de déploiement d'API inclura une section
routes
contenant les éléments suivants :- Un chemin. Par exemple
/hello
. - Une ou plusieurs méthodes. Par exemple
GET
- La définition d'un élément dorsal. Par exemple, une URL ou l'OCID d'une fonction du service des fonctions pour OCI.
Par exemple, la spécification de déploiement d'API de base suivante définit une simple fonction sans serveur Hello World du service des fonctions pour OCI en tant qu'élément dorsal unique :
{ "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" } } ] }
- Un chemin. Par exemple
-
(Facultatif) Pour définir le niveau de journal des journaux d'exécution, qui s'applique globalement à toutes les routes de la spécification de déploiement d'API :
-
Insérez une section
loggingPolicies
avant la sectionroutes
. Par exemple :{ "loggingPolicies": {}, "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" } } ] }
-
Précisez le niveau de détail à enregistrer pour le traitement dans la passerelle d'API pour toutes les routes en incluant la politique
executionLog
dans la sectionloggingPolicies
et en réglant la propriétélogLevel
à l'une des valeurs suivantes :INFO
pour enregistrer un sommaire de toutes les étapes de traitement.WARN
pour enregistrer uniquement les erreurs transitoires qui se produisent lors du traitement. Par exemple, la réinitialisation d'une connexion.ERROR
pour enregistrer uniquement les erreurs persistantes qui se produisent lors du traitement. Par exemple, une erreur interne ou un appel à une fonction qui retourne un message 404.
Par exemple :
{ "loggingPolicies": { "executionLog": { "logLevel": "INFO" } }, "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" } } ] }
-
-
(Facultatif) Pour définir le niveau de journal pour les journaux d'exécution d'une route particulière (remplacement du niveau de journal d'exécution global hérité du déploiement d'API) :
-
Insérez une section
loggingPolicies
après la sectionbackend
de la route. Par exemple :{ "loggingPolicies": { "executionLog": { "logLevel": "INFO" } }, "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" }, "loggingPolicies": {} } ] }
-
Précisez le niveau de détail à enregistrer pour le traitement dans la passerelle d'API pour la route en incluant la politique
executionLog
dans la sectionloggingPolicies
et en réglant la propriétélogLevel
à l'une des valeurs suivantes :INFO
pour enregistrer un sommaire de toutes les étapes de traitement.WARN
pour enregistrer uniquement les erreurs transitoires qui se produisent lors du traitement. Par exemple, la réinitialisation d'une connexion.ERROR
pour enregistrer uniquement les erreurs persistantes qui se produisent lors du traitement. Par exemple, une erreur interne ou un appel à une fonction qui retourne un message 404.
Par exemple :
{ "loggingPolicies": { "executionLog": { "logLevel": "INFO" } }, "routes": [ { "path": "/hello", "methods": ["GET"], "backend": { "type": "ORACLE_FUNCTIONS_BACKEND", "functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq" }, "loggingPolicies": { "executionLog": { "logLevel": "ERROR" } } } ] }
-
-
Enregistrez le fichier JSON contenant la spécification de déploiement d'API.
-
Utilisez comme suit la spécification de déploiement d'API lorsque vous créez ou mettez à jour un déploiement d'API :
- En spécifiant le fichier JSON dans la console lorsque vous sélectionnez l'option Charger une API existante.
- En spécifiant le fichier JSON dans une demande à l'API REST du service Passerelle d'API.
Pour plus d'informations, voir Déploiement d'une API sur une passerelle d'API en créant un déploiement d'API.
- Après avoir défini le niveau de journal des journaux d'exécution, suivez les instructions sous Activation de la journalisation pour une ressource pour créer et activer un nouveau journal de déploiement d'API dans le service Journalisation pour Oracle Cloud Infrastructure.
Consultation des journaux
Ayant ajouté la journalisation à une spécification de déploiement d'API et déployé l'API sur une passerelle d'API, le service Passerelle d'API écrit les journaux en conséquence.
Consultation des journaux dans le service Journalisation pour Oracle Cloud Infrastructure
Vous pouvez voir le contenu d'un journal de déploiement d'API dans Oracle Cloud Infrastructure Logging à partir de la page Détails du déploiement d'API. Sous Ressources, sélectionnez Journaux, puis sélectionnez le nom du journal que vous voulez voir.
Vous pouvez également voir le contenu d'un journal de déploiement d'API à partir de la page Recherche de journaux dans Oracle Cloud Infrastructure Logging. Voir Obtention des détails d'un journal.
Pour plus d'informations sur le contenu des journaux d'accès et d'exécution, voir :