Todos os produtos
Search
Central de documentação

Function Compute:Logging

Última atualização: Jun 29, 2026

O runtime PHP do Function Compute oferece duas formas de gravar logs no código da função: o módulo logger integrado e as funções padrão de saída do PHP. Este tópico explica como usar cada abordagem e como visualizar os logs após a execução da função.

Imprimir logs

Usar o logger integrado

Em funções com runtime integrado, acesse o logger pela variável global $GLOBALS['fcLogger']. O sistema encaminha automaticamente os logs para o Logstore do Simple Log Service (SLS) especificado na criação do serviço.

Cada entrada de log segue esta estrutura:

YYYY-MM-DD HH:MM:SS <requestId> [LEVEL] message

Exemplo:

2024-01-04 10:50:44 1-659xxxxx-16cxxxxx-39659xxxxxx [INFO] hello world

O logger integrado adiciona automaticamente carimbo de data/hora, ID da solicitação e nível de log a cada entrada. As funções padrão de saída do PHP (descritas na próxima seção) não incluem esses metadados.

O exemplo a seguir imprime dois logs no nível INFO padrão e eleva o nível para CRITICAL (500). Isso suprime os logs INFO subsequentes:

<?php

function handler($event, $context) {
  $logger = $GLOBALS['fcLogger'];
  $logger->info('hello world');
  $logger->critical('world hello');

  $logger->setLevel(500);
  $logger->info('hello world 2');    // suppressed -- below CRITICAL threshold
  $logger->critical('world hello 2');
  return 'hello world';
}

Saída esperada:

FunctionCompute php7.2 runtime inited.
FC Invoke Start RequestId: 1-659xxxxx-16cxxxxx-39659xxxxxx
2024-01-04 10:50:44 1-659xxxxx-16cxxxxx-39659xxxxxx [INFO] hello world
2024-01-04 10:50:44 1-659xxxxx-16cxxxxx-39659xxxxxx [CRITICAL] world hello
2024-01-04 10:50:44 1-659xxxxx-16cxxxxx-39659xxxxxx [CRITICAL] world hello 2
\nFC Invoke End RequestId: 1-659xxxxx-16cxxxxx-39659xxxxxx

A mensagem hello world 2 não aparece porque, após a chamada setLevel(500), o logger emite apenas mensagens com nível CRITICAL (500) ou superior.

Níveis de log

Use $logger->setLevel(<numeric_level>) para controlar quais mensagens são emitidas. O sistema descarta mensagens abaixo do nível ativo. O nível padrão é INFO (200).

Nível de log

Valor numérico

Interface

Quando usar

EMERGENCY

600

$logger->emergency

Sistema inutilizável; requer ação imediata

ALERT

550

$logger->alert

Componente crítico inoperante; exige intervenção urgente

CRITICAL

500

$logger->critical

Falha grave ocorrida; demanda atenção urgente

ERROR

400

$logger->error

Operação falhou e não pôde ser concluída

WARNING

300

$logger->warning

Situação inesperada, mas a execução continuou

NOTICE

250

$logger->notice

Evento normal, porém significativo, que vale a pena rastrear

INFO

200

$logger->info

Mensagens operacionais gerais; nível padrão

DEBUG

100

$logger->debug

Informações detalhadas de diagnóstico para desenvolvimento e solução de problemas

Usar funções padrão de saída do PHP

Se a função não utilizar um runtime integrado, use as funções padrão de saída do PHP. Diferentemente do logger integrado, essa abordagem imprime apenas o conteúdo bruto, sem adicionar carimbo de data/hora, ID da solicitação ou nível de log.

<?php

function handler($event, $context) {
  var_dump("abcd");
  echo "abcd 2\n";
  fwrite(STDERR, "error\n");
  return 'hello world';
}

Saída esperada:

FunctionCompute php7.2 runtime inited.
FC Invoke Start RequestId: 1-659xxxxx-165xxxxx-455a04xxxxxx
/code/index.php:4:
string(4) "abcd"
abcd 2
error
\nFC Invoke End RequestId: 1-659xxxxx-165xxxxx-455a04xxxxxx

Qualquer função que escreva na saída padrão ou no erro padrão opera da mesma maneira.

Visualizar logs

Após a execução da função, abra-a no console do Function Compute e acesse a aba Logs na página Function Details. Para filtrar e consultar logs entre diferentes invocações, consulte Visualizar logs de invocação.