Details zu Functions

Loggingdetails für Functions-Logs.

Ressourcen

  • Anwendungen

Logkategorien

API-Wert (ID): Konsole (Anzeigename) Beschreibung
Aufrufen Funktionsaufruflogs Loggt Einträge bei jedem Aufruf einer Funktion in einer Anwendung.

Verfügbarkeit

Functions-Logging ist in allen Regionen der kommerziellen Realms verfügbar.

Kommentare

Wenn Sie das Logging für eine Anwendung aktivieren, werden Standardaufruflogs bei jedem Aufruf von Funktionen in der Anwendung wie folgt erstellt:

  • Das Standardstartlog für den Aufruf enthält die folgende Meldung:

    Received function invocation request
  • Das Standard-Aufrufendlog enthält die folgende Meldung (ein Fehlercode ist nur enthalten, wenn Fehler auftreten):

    Served function invocation request in <number> seconds [with error code <number> - <message>]

Um Logs für eine Funktion (mit Ausnahme der Standardaufruflogs) zu speichern und anzuzeigen, müssen Sie Ihrer Funktion Druckanweisungen hinzufügen. Beispiel:

  • Für Node.js:

    console.log('Entering Hello Node.js function');
  • For Java:

    System.out.println("Entering Java Hello World Function");
  • Für Go:

    fmt.Println("Entering Hello Go function")

Inhalt eines Functions-Logs

Eigenschaft Beschreibung
specversion Oracle Cloud Infrastructure Logging-Schemaversion des Logs.
type Logkategorie, nach der Konvention com.oraclecloud.{service}.{resource-type}.{log-category}. Aktuell nur:
com.oraclecloud.functions.application.functioninvoke
source Anzeigename der Anwendung, mit der das Log verknüpft ist.
subject Anzeigename der Funktion, mit der das Log verknüpft ist.
id Zufällige UUID, die für jeden Logeintrag eindeutig ist.
time Uhrzeit, zu der die Funktionsausgabe generiert wurde, im RFC 3339-Zeitstempelformat.
oracle.logid OCID des Oracle Cloud Infrastructure Logging-Logobjekts.
oracle.loggroupid OCID der Oracle Cloud Infrastructure Logging-Loggruppe.
oracle.compartmentid OCID des Compartments, in dem sich die Funktion/Anwendung befindet.
oracle.tenantid OCID des Mandanten, in dem sich die Funktion/Anwendung befindet.
oracle.ingestedtime Zeit, zu der die Logzeile von Oracle Cloud Infrastructure Logging im RFC 3339-Zeitstempelformat aufgenommen wurde.
data.applicationId OCID der Anwendung, mit der die Logzeile verknüpft ist.
data.containerId FaaS-servicespezifische ID des Containers der Funktion.
data.functionId OCID der Funktion, mit der die Logzeile verknüpft ist.
data.requestId Oracle RID des Funktionsaufrufs, mit dem die Logzeile verknüpft ist. Veraltet, verwenden Sie stattdessen data.opcRequestId.
data.opcRequestId Oracle-RID des Funktionsaufrufs, mit dem die Logzeile verknüpft ist.
data.src I/O-Streamursprung von data.message. Entweder STDOUT oder STDERR.
data.message Vom Benutzer generierte Ausgabezeile der Funktion.

Beispiel für ein Functions-Log

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

Name des Functions-Logobjekts

Für Objekte, die Functions-Logdaten speichern, wird das folgende Benennungsformat verwendet:

log/<function-OCID>/<YYYY-MM-DDTHH_MMZ>[_<seqNum>].log.gz

Beispiel:

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

Befehlszeilenschnittstelle (CLI) verwenden

Einen Beispielbefehl zum Aktivieren des Functions-Loggings finden Sie unter Beispiel zu Functions.