Configurar logging
Você não precisa criar uma fonte de log para enviar logs da integração AppSignal for Node.js. Uma fonte de log “application” será criada automaticamente.Uso autônomo
Para usar o logger, você precisa importar o AppSignal e configurar o logger usando a função.logger().
A função .logger() aceita dois argumentos: group e, opcionalmente, severityThreshold. Se severityThreshold não for fornecido, o padrão será info.
trace, debug, info, log, warn e error, cada um deles com sua própria função de mesmo nome. Essas funções aceitam dois argumentos: message e attributes. Attributes é usado para metadados e é opcional.
As mensagens só serão registradas se o nível de severidade delas estiver acima do limite de severidade.
Usando múltiplos backends de logging
Atualmente não é possível enviar logs para múltiplos backends usando o logger padrão do Node.js. Para configurações mais complexas, recomendamos usar uma biblioteca de logging como Winston ou Pino.Uso com Winston
Se você usa o Winston para registrar mensagens em toda a sua aplicação, pode usar nosso transport do Winston para enviar esses logs ao AppSignal. Depois de importar o transport da integração AppSignal, adicione-o à lista de transports do seu logger Winston:Child Logger
Você pode usar um child logger para adicionar tags extras às mensagens de log. Você define tags ao criar o child logger ou passa tags como metadados ao escrever uma mensagem de log. Digamos que queremos mais contexto nos logs das ações de um usuário específico dentro de uma sessão específica. No exemplo abaixo, um child logger para o grupobackground é usado para adicionar sessionID, com as tags adicionais drinkID e paymentID fornecidas como metadados ao criar uma mensagem de log, e se um grupo for passado para o child, ele irá sobrescrever o que foi configurado no transport.
Usando múltiplos backends de logging
Para enviar logs tanto para o logger do AppSignal quanto para oSTDOUT, adicione outro transport:
Uso com Pino
Se o Pino é a sua biblioteca de logging preferida, você pode usar o transport Pino do AppSignal para enviar logs ao AppSignal. O argumento group terá como padrão “app” se não for fornecido.Usando múltiplos backends de logging
Para enviar logs tanto para o logger do AppSignal quanto para oSTDOUT, adicione outro target:
Formatos
Formato detectado automaticamente
O pacote AppSignal for Node.js vai detectar automaticamente o formato da linha de log como JSON, Logfmt ou plaintext por padrão, e fará o parsing dos atributos a partir disso. Você não precisa definir manualmente o formato do log, a não ser que ele não esteja sendo detectado corretamente. Por favor, também nos avise se isso não estiver funcionando automaticamente.Logfmt
O AppSignal Logger pode ser configurado explicitamente para esperar que a linha esteja formatada como Logfmt e fazer o parsing dos atributos a partir dela. Use essa opção quando estiver usando uma versão mais antiga do pacote AppSignal for Node.js, que não suporta a detecção automática de formato. O formato de log pode ser especificado ao criar um logger. Ao inicializar o AppSignal logger, passe o valor"logfmt" como terceiro argumento.
JSON
O AppSignal Logger pode ser configurado explicitamente para esperar que a linha esteja formatada como JSON e fazer o parsing dos atributos a partir dela. Use essa opção quando estiver usando uma versão mais antiga do pacote AppSignal for Node.js, que não suporta a detecção automática de formato. O formato de log pode ser especificado ao criar um logger. Ao inicializar o AppSignal logger, passe o valor"json" como terceiro argumento.
Filtrando logs
Você pode usar a opção de configuraçãoignoreLogs para ignorar linhas de log com base na mensagem. Veja nosso guia Ignore Logs para saber mais.