Informations détaillées sur le service des fonctions
Détails de journalisation pour les journaux de fonctions.
Ressources
- applications
Catégories de journaux
Valeur d'API (ID) : | Console (Nom d'affichage) | Description |
---|---|---|
invoke | Function Invocation Logs | Enregistre les entrées chaque fois qu'une fonction d'une application est appelée. |
Disponibilité
La journalisation pour le service Fonctions est disponible dans toutes les régions des domaines commerciaux.
Commentaires
Si vous activez la journalisation pour une application, des journaux d'appel par défaut sont créés chaque fois que des fonctions de l'application sont appelées, comme suit :
-
Le journal de début d'appel par défaut contient le message suivant :
Received function invocation request
-
Le journal de fin d'appel par défaut contient le message suivant (un code d'erreur n'est inclus que si des erreurs se produisent) :
Served function invocation request in <number> seconds [with error code <number> - <message>]
Pour stocker et consulter les journaux d'une fonction (autres que les journaux d'appel par défaut), vous devez ajouter des instructions d'impression à votre fonction. Par exemple :
-
Pour les noeuds js :
console.log('Entering Hello Node.js function');
-
Pour java :
System.out.println("Entering Java Hello World Function");
-
Pour go :
fmt.Println("Entering Hello Go function")
Contenu d'un journal du service des fonctions
Propriété | Description |
---|---|
specversion | Version du schéma du journal pour la journalisation pour Oracle Cloud Infrastructure. |
type | Catégorie de journal, conformément à la convention com.oraclecloud.{service}.{resource-type}.{log-category} . Actuellement seulement :
|
source | Nom d'affichage de l'application à laquelle le journal est associé. |
subject | Nom d'affichage de la fonction à laquelle le journal est associé. |
id | UUID aléatoire, unique pour chaque entrée de journal. |
time | Heure à laquelle la sortie de la fonction a été générée, dans le format d'horodatage RFC 3339. |
oracle.logid | OCID de l'objet de journal du service de journalisation pour Oracle Cloud Infrastructure. |
oracle.loggroupid | OCID du groupe de journaux du service de journalisation pour Oracle Cloud Infrastructure. |
oracle.compartmentid | OCID du compartiment dans lequel se trouve la fonction/l'application. |
oracle.tenantid | OCID de la location dans laquelle se trouve la fonction/l'application. |
oracle.ingestedtime | Heure à laquelle la ligne de journal a été ingérée par la journalisation pour Oracle Cloud Infrastructure, dans le format d'horodatage RFC 3339. |
data.applicationId | OCID de l'application à laquelle la ligne de journal est associée. |
data.containerId | ID propre au service FaaS du conteneur de la fonction. |
data.functionId | OCID de la fonction à laquelle la ligne de journal est associée. |
data.requestId | ID Oracle de l'appel de la fonction auquel la ligne de journal est associée. Obsolète, utilisez plutôt data.opcRequestId. |
data.opcRequestId | RID Oracle de l'appel de fonction auquel la ligne de journal est associée. |
data.src | Origine du flux d'E/S de data.message. STDOUT ou STDERR. |
data.message | Ligne de sortie générée par l'utilisateur à partir de la fonction. |
Exemple de journal du service des fonctions
{
"specversion": "1.0",
"type": "com.oraclecloud.functions.application.functioninvoke",
"source": "Application display name",
"subject": "Function display name",
"id": "487c8669-f384-4c79-950a-d6df47246093",
"time": "2020-08-19T15:33:29.000Z",
"oracle": {
"logid": "ocid1.log.oc1.iad.<unique_ID>",
"loggroupid": "ocid1.loggroup.oc1.iad.<unique_ID>",
"compartmentid": "ocid1.compartment.oc1..<unique_ID>",
"tenantid": "ocid1.tenancy.oc1..<unique_ID>",
"ingestedtime": "2020-08-19T15:33:30.832Z"
},
"data": {
"applicationId": "ocid1.fnapp.oc1.iad.<unique_ID>",
"containerId": "01EG3NMHG6000000000000022S",
"functionId": "ocid1.fnfunc.oc1.iad.<unique_ID>",
"requestId": "/01EG3NN3C11BT19PGZJ00000VZ/01EG3NN3C11BT19PGZJ00000W0",
"opcRequestId": "/01EG3NN3C11BT19PGZJ00000VZ/01EG3NN3C11BT19PGZJ00000W0",
"src": "STDERR",
"message": "2020-08-19 15:33:29,124 - fdk.event_handler - INFO - request execution completed"
}
}
Nom d'objet de journal du service des fonctions
Les objets qui stockent les données de journal du service Fonctions utilisent le format d'attribution de nom suivant :
log/<function-OCID>/<YYYY-MM-DDTHH_MMZ>[_<seqNum>].log.gz
Par exemple :
log/ocid1.function.oc1.phx.<unique_ID>/2019-03-21T00_00Z.log.gz log/ocid1.function.oc1.phx.<unique_ID>/2019-03-21T00_00Z_2.log.gz
Utilisation de l'interface de ligne de commande (CLI)
Voir Exemple de fonctions pour un exemple de commande permettant d'activer la journalisation pour le service Fonctions.