Détails du service Functions

Détails de journalisation pour les journaux Functions.

Ressources

  • applications

Catégories de journal

Valeur d'API (ID) : Console (nom d'affichage) Description
invoke Journaux d'appels Functions Consigne les entrées chaque fois qu'une fonction dans une application est appelée.

Disponibilité

La journalisation Functions 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émarrage 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 afficher 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 Node.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 Functions

Propriété Description
specversion Version du schéma de journalisation Oracle Cloud Infrastructure du journal.
type Catégorie de journal, conformément à la convention com.oraclecloud.{service}.{resource-type}.{log-category}. Actuellement, seulement ce qui suit :
com.oraclecloud.functions.application.functioninvoke
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, propre à chaque entrée de journal.
time Heure de génération de la sortie de la fonction, au format d'horodatage RFC 3339.
oracle.logid OCID de l'objet de journal Oracle Cloud Infrastructure Logging.
oracle.loggroupid OCID du groupe de journaux Oracle Cloud Infrastructure Logging.
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é incluse par Oracle Cloud Infrastructure Logging, au 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 RID Oracle de l'appel de fonction auquel la ligne de journal est associée. En phase d'abandon, utilisez data.opcRequestId à la place.
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 Functions

{
  "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 Functions

Les objets qui stockent les données du journal Functions utilisent le format de dénomination 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)

Reportez-vous à Exemple dans Functions pour obtenir un exemple de commande permettant d'activer la journalisation Functions.