Detalhes do Serviço Functions

Detalhes de log para logs do serviço Functions.

Recursos

  • aplicativos

Categoria de Log

Valor da API (ID): Console (Nome para Exibição) Descrição
chamar Logs de Chamada de Função Registra entradas toda vez que uma função em um aplicativo é chamada.

Disponibilidade

O registro em log do serviço Functions está disponível em todas as regiões dos realms comerciais.

Comentários

Se você ativar o log de um aplicativo, os logs de chamada padrão serão criados sempre que as funções do aplicativo forem chamadas, da seguinte forma:

  • O log inicial de chamada padrão contém a seguinte mensagem:

    Received function invocation request
  • O log final de chamada padrão contém a seguinte mensagem (um código de erro só será incluído se ocorrerem erros):

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

Para armazenar e exibir logs de uma função (diferente dos logs de chamada padrão), você deve adicionar instruções de impressão à sua função. Por exemplo:

  • Para nó js:

    console.log('Entering Hello Node.js function');
  • Para java:

    System.out.println("Entering Java Hello World Function");
  • Para go:

    fmt.Println("Entering Hello Go function")

Conteúdo de um Log do Serviço Functions

Propriedade Descrição
specversion Versão do esquema de registro em log do Oracle Cloud Infrastructure do log.
type Categoria de log, seguindo a convenção com.oraclecloud.{service}.{resource-type}.{log-category}. Apenas atualmente:
com.oraclecloud.functions.application.functioninvoke
source Nome para exibição do aplicativo ao qual o log está associado.
subject Nome para exibição da função à qual o log está associado.
id UUID Aleatório, exclusivo de cada entrada de log.
time A hora em que a saída da função foi gerada, no formato de timestamp RFC 3339.
oracle.logid OCID do objeto de log do Oracle Cloud Infrastructure Logging.
oracle.loggroupid OCID do grupo de logs do Oracle Cloud Infrastructure Logging.
oracle.compartmentid OCID do compartimento no qual a função/o aplicativo se encontra.
oracle.tenantid OCID da tenancy na qual a função/o aplicativo se encontra.
oracle.ingestedtime Hora em que a linha de log foi ingerida pelo registro em log do Oracle Cloud Infrastructure, no formato de timestamp RFC 3339.
data.applicationId OCID do aplicativo ao qual a linha de log está associada.
data.containerId ID específico do serviço FaaS do contêiner da função.
data.functionId OCID da função à qual a linha de log está associada.
data.requestId O Oracle RID da chamada de função à qual a linha do log está associada. Obsoleto, use data.opcRequestId.
data.opcRequestId O Oracle RID da chamada de função à qual a linha de log está associada.
data.src Origem do stream de E/S de data.message. STDOUT ou STDERR.
data.message Linha de saída gerada pelo usuário da função.

Um Exemplo de Log do Serviço 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"
  }
}

Nome do Objeto de Log do Serviço Functions

Os objetos que armazenam dados de log do serviço Functions usam o seguinte formato de nomenclatura:

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

Por exemplo:

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

Usando a Interface de Linha de Comando (CLI)

Consulte Exemplo do Serviço Functions para obter um exemplo de comando para ativar o registro em log do serviço Functions.