Como implementar o log em Node.js

Como Implementar O Log Em Node Js



Exploração madeireira ”em node.js desempenha um papel vital na manutenção de todo o ciclo de vida do procedimento de desenvolvimento de sites. É que o log é a funcionalidade mais comum realizada pelos desenvolvedores para analisar as funcionalidades do código de vez em quando para analisar os dados, codificar e resolver os erros com base na análise do código.

Este artigo explica o conteúdo listado abaixo:

Quando fazer login no node.js?

A seguir estão os níveis de registro comuns em node.js:







  • Informações: As tarefas ou saídas que confirmam a execução simplificada do código.
  • Avisar: Os eventos que precisam ser considerados para evitar as falhas.
  • Erro: Os eventos que resultam na falha na execução do código.
  • Depurar: Este nível é utilizado principalmente pelos desenvolvedores.

Onde é realizado o registro?

Os eventos de log podem ser enfileirados e vários ouvintes podem ouvir a fila e gravar em qualquer log necessário. Antes de finalizar onde registrar, deve-se saber que a metodologia de destino pode lidar com múltiplas mensagens de log. A seguir estão alguns dos locais de registro comuns:



  • saída padrão
  • stderr
  • console

É tal que o básico “ console.log() ' e ' console.info() ”métodos registram em“ saída padrão ”. No entanto, o ' console.warn() ' e ' console.error() ”métodos registram em“ stderr ”. Esses métodos exibem a saída no console. No front end, este será o console de ferramentas do programador.



Como implementar o log em Node.js?

Analisar a necessidade de exploração madeireira em diversas situações é crucial para implementar a abordagem de exploração madeireira correspondente. O log em node.js pode ser implementado por meio das abordagens indicadas abaixo:





  • console.log() “Método.
  • console.warn() “Método.
  • console.error() “Método.
  • console.tabela() “Método.
  • Módulo de depuração.
  • Pacote Winston.

Abordagem 1: Implemente o log em node.js usando o método “console.log()”

O ' console.log() ”O método exibe a saída no console e é útil para testar as funcionalidades do código de tempos em tempos.

Sintaxe



console. registro ( bagunça )

Nesta sintaxe, “ bagunça ”refere-se à mensagem a ser escrita no console.

Agora, prossiga para o bloco de código fornecido abaixo que registra as mensagens fornecidas no console:

console. registro ( 'Este é o Linuxhint!' ) ;

console. registro ( 'Este é o Node js!' ) ;

Saída

A partir deste resultado, pode-se concluir que as mensagens indicadas são exibidas no console de forma adequada.

Abordagem 2: Implemente o log em node.js usando o método “console.warn()”

O ' console.warn() ”O método exibe uma mensagem de aviso para o console.

Sintaxe

console. avisar ( bagunça )

Na sintaxe fornecida, “ bagunça ”Indica a mensagem (também personalizada) a ser exibida no console.

Agora, vá para a seguinte linha de código que exibe uma mensagem de aviso personalizada com a ajuda do “ console.warn() ”método:

console. avisar ( “Isto é um aviso!” ) ;

Saída

Como visto, o aviso personalizado especificado é exibido adequadamente.

Abordagem 3: Implemente o log em node.js usando o método “console.error()”

Este método grava uma mensagem de erro no console.

Sintaxe

console. erro ( [ dados ] [ , ... argumentos ] )

Nesta sintaxe:

  • dados ”refere-se à mensagem principal.
  • argumentos ”representam os valores.

Valor de retorno

Este método recupera uma mensagem de erro.

Visão geral do seguinte trecho de código que registra uma mensagem de erro na condição insatisfeita:

x = 150 ;
se ( x < 100 ) {
console. registro ( 'Bom para ir' ) ;
}
outro {
console. erro ( 'Número inadequado' ) ;
}

De acordo com este código:

  • Inicialize um número inteiro a ser analisado quanto às condições.
  • Depois disso, aplique o “ se ”Instrução tal que se o número inteiro inicializado for menor que “100”, a mensagem especificada será exibida.
  • Caso contrário, o “ outro ”A instrução executa a mensagem de erro no“ console.error() ”Método.

Saída

Esta saída confirma que, após a condição insatisfeita, a mensagem de erro personalizada será exibida no console adequadamente.

Abordagem 4: Implemente o log em node.js usando o método “console.table()”

Este método cria e exibe uma tabela no console.

Sintaxe

console. mesa ( td, tc )

Aqui, ' td ”representa os dados da tabela e“ tc ”refere-se à matriz de colunas da tabela.

Agora, siga a instrução de código abaixo que cria uma tabela atribuindo um índice separado aos valores atribuídos aos tipos de dados de vídeo duas vezes:

console. mesa ( [ { x : 10 , a : 'Atormentar' } , { x : quinze , a : 'Com' } ] ) ;

Saída

Abordagem 5: Implemente o log em node.js usando o “Módulo de depuração”

Este módulo pode ser usado para registrar informações extras sobre o status do middleware da web, ou seja, Express, Koa, etc., quando o back-end recebe uma solicitação da Internet. O middleware é colocado no pipeline de solicitação.

A seguir estão as abordagens para configurar o middleware de registro em log:

Exemplo 1: Configurando o Middleware de Log do Aplicativo

O ' aplicativo.use() ”A função monta a função de middleware de destino no caminho especificado.

Sintaxe

aplicativo. usar ( pt, cb )

Na sintaxe fornecida acima:

  • ponto ”refere-se ao caminho para o qual a função de middleware deve ser invocada.
  • cb ”corresponde à(s) função(ões) de middleware.

A seguir está a demonstração do código que configura o middleware de registro por meio de um aplicativo e o método discutido:

const aplicativo = expressar ( )

const logMiddleware = exigir ( 'meu-middleware de registro' )

aplicativo. usar ( logMiddleware )

Neste código, crie uma aplicação Express e inclua “ meu-logging-middleware ” para começar a trabalhar com o middleware de registro. Por último, aplique o “ aplicativo.use() ”Função para montar a função de middleware de destino no caminho especificado.

Exemplo 2: Configurando o middleware de registro do aplicativo via roteador

O ' roteador.use() ”A função monta middleware para as rotas atendidas pelo roteador de destino.

Sintaxe

roteador. usar ( para, função )

Nesta sintaxe:

  • ponto ”refere-se ao caminho do middleware.
  • função ”corresponde à função passada como retorno de chamada.

O exemplo abaixo configura o middleware de registro com a ajuda do objeto roteador e do “ roteador.use() ”função:

const roteador = expressar. Roteador ( )

const rtLoggingMiddleware = exigir ( 'my-route-logging-middleware' )

roteador. usar ( rtLoggingMiddleware )

Neste código:

  • O ' expresso.Router() ”A função cria um novo objeto roteador.
  • Depois disso, inclua “ my-route-logging-middleware ”E da mesma forma, utilize o“ roteador.use() ”função para montar middleware para as rotas atendidas pelo roteador de destino.

Abordagem 6: Implemente o log em node.js usando o “pacote Winston”

Este pacote específico inclui opções de armazenamento, vários níveis de log, consultas e um criador de perfil. A seguir está a demonstração do código que implementa o registro em log por meio desta abordagem:

const x = expressar ( )
const incluir = exigir ( 'Winston' )
const consoleTransporte = novo incluir. transportes . Console ( )
const opta = {
transportes : [ consoleTransporte ]
}
const registrador = novo incluir. criarLogger ( opta )
função displayRequest ( req, res, próximo ) {
registrador. informações ( requer. url )
próximo ( )
}
x. usar ( solicitação de exibição )
função displayError ( errar, requerer, res, próximo ) {
registrador. erro ( errar )
próximo ( )
}
x. usar ( erro de exibição )

Neste código:

  • Vários transportes podem ser configurados com filtragem e formatadores personalizados podem ser configurados.
  • Além disso, várias instâncias do logger são especificadas em funções diferentes, ou seja, “ logger.info() ' e ' logger.error() ”.
  • Esses registradores exibem as informações e mensagens de erro, respectivamente.
  • Neste código, apenas a URL solicitada é registrada.

Os parâmetros fornecidos abaixo são obtidos pelos registradores:

Nome Padrão Descrição
formatar Winston.format.json Formata as mensagens informativas
silencioso Falso Se for verdade, todos os logs serão suspensos.
exitOnError Verdadeiro Se for falso, as exceções lidas não causam process.exit
níveis Winston.config.npm.levels Os níveis referem-se às prioridades do log.

Conclusão

O login em node.js pode ser implementado através do “ console.log() 'Método, o' console.warn() 'Método, o' console.error() 'Método, o' console.tabela() 'Método, o' Módulo de depuração ”, ou através do “ Pacote Winston ”. Os métodos do console exibem as informações e mensagens de erro. O Módulo de depuração registra informações extras sobre o status do middleware da web e o pacote Winston contém as opções de armazenamento e vários níveis de log.