Consulte logs de funções com GraphQL API
Recupere as linhas de log de console e de runtime das suas funções em um intervalo de tempo e filtre-as pelo conteúdo da mensagem.
Você pode recuperar as linhas de log que uma função escreve com GraphQL API. Rode a query por uma plataforma de API como Postman ou pelo GraphiQL Playground em Azion Console. O dataset functionConsoleEvents retorna as mensagens que o seu código escreve com console.log e as linhas que Azion Runtime produz. Para tempo de computação e contagem de invocações, consulte Consulte dados de uso de Functions. Para relacionar uma entrada à sua causa, consulte Solução de problemas de execução e logs de funções.
Pré-requisitos
- Um personal token. Para criar um, consulte Personal Tokens.
- Uma função que já rodou pelo menos uma vez. Criar uma função não a executa. Uma função que nunca roda não escreve entradas.
Monte a query
O dataset functionConsoleEvents guarda uma entrada por mensagem de log. Esta query retorna 10 entradas de um intervalo de tempo, ordenadas da mais antiga para a mais recente:
Defina begin e end com o intervalo de tempo que você quer ler. O campo limit aceita até 10.000 linhas por query e uma query seleciona no máximo 37 campos. Para os dois limites, consulte Limites API GraphQL.
Envie a query
O endpoint do Real-Time Events, https://api.azion.com/v4/events/graphql, recebe a query. Para enviá-la pelo Postman ou por outra plataforma de API:
Para a configuração completa do Postman, consulte Como rodar requisições da GraphQL no Postman.
Digite Authorization: Token [TOKEN VALUE], em que [TOKEN VALUE] é o token que você criou.
Digite https://api.azion.com/v4/events/graphql.
A resposta carrega as entradas correspondentes em JSON:
Cada entrada carrega o nível da mensagem em level, a sua categoria em lineSource e a própria mensagem em line. CONSOLE marca uma linha que o seu próprio código escreveu com console.log. Uma linha que Azion Runtime produziu, como uma exceção, carrega RUNTIME. O campo id é o identificador da requisição e agrega todas as mensagens de uma mesma requisição. Para todos os campos do dataset, consulte Campos da API GraphQL do Real-Time Events.
Agora você tem as entradas de log do intervalo de tempo, cada uma com o seu nível e a sua origem.
Filtre as entradas pela mensagem
Cada chave do filtro junta um nome de campo a um operador, como em tsRange e lineLike. Para retornar apenas as entradas cuja mensagem corresponde a um padrão, adicione lineLike ao filtro:
O caractere % representa qualquer sequência de caracteres, então "%TypeError%" corresponde a toda linha que contém TypeError. Like diferencia maiúsculas de minúsculas e Ilike é a sua forma que não diferencia. Para todos os operadores, consulte Queries API GraphQL.