apx-logger
v1.0.0
Published
Módulo dedicado a padronizar os logs das aplicações.
Downloads
1
Readme
apx-logger
Módulo dedicado a padronizar os logs das aplicações.
Instalação
npm install apx-logger -P
Utilização
A interface expõe um objeto com três propriedades:
- loggerMiddleware - Seta uma instancia do logger na request;
- makeLogger - Cria uma instancia do logger configurado;
- logger - Instancia do Winston.
Middleware
O middleware exposto na propriedade loggerMiddleware
vai setar uma propriedade req.logger com uma instancia configurada para a request atual, padronizando o formato das mensagens logadas por middleware posteriores.
Para utiliza em uma aplicação express, registre o middleware após as rotas:
const app = require('express')();
const { loggerMiddleware } = require('apx-logger');
app.use(loggerMiddleware);
app.use(...); // suas rotas
Para logar nos middleware porteriores, utilize o método correspondente ao nível desejado:
const { ValidationError } = require('apx-errors');
module.exports = (req, res, next) => {
req.logger.error('Erro!');
}
Monitoramento
Os níveis de log (error, warn, info) são utilizados para monitorar as aplicações. Considere as seguintes regras para garantir um monitoramento eficiente:
- ERROR:
- Deve ser logado apenas uma vez na vida de uma request;
- Não há processamento posterior;
- Indica incidentes que exigem ação do banco;
- Geralmente associados a status 500.
- WARN:
- Deve ser logado apenas uma vez na vida de uma request;
- Não há processamento posterior;
- Indica incidentes que exigem ação do usuário;
- Geralmente associados a status 400.
- SUCCESS:
- Deve ser logado apenas uma vez na vida de uma request;
- Não há processamento posterior;
- Indica requests processadas com sucesso;
- Geralmente associados a status 200.
- INFO:
- Pode ser logado inúmeras vezes (não é contabilizado);
- Utilizado para logar os passos do processamento de uma request.