@anota.ai/logger v1.0.1
Logger
O módulo logger.js
fornece um simples logger com zero dependências.
Funcionamento
O logger só irá produzir mensagens com nível igual ou superior ao nível configurado, com exceção dos níveis "error" e "fatal", que sempre serão logados. Caso o nível configurado seja inválido, o logger irá logar uma mensagem de erro fatal e encerrar o processo com o código de saída 1.
O nível de log pode ser configurado através da variável de ambiente LOG_LEVEL
.
Também é possível configurar o formato da mensagem de log através da variável de ambiente LOG_FORMAT
. Os seguintes formatos estão disponíveis:
json
- Formato JSON, exemplo:{ "level": "debug", "message": "inicializando aplicação", "context": { "port": 3000 } }
simple
- Formato simples, exemplo:[debug] inicializando aplicação (context omitted)
pretty
- Formato JSON com indentação, exemplo:
{
"level": "debug",
"message": "inicializando aplicação",
"context": {
"port": 3000
}
}
API
debug(message: string, context: object?)
info(message: string, context: object?)
warn(message: string, context: object?)
error(message: string, context: object?)
fatal(message: string, context: object?)
Exemplos
O código abaixo mostra um exemplo de como utilizar o logger:
const logger = require('@anota.ai/logger');
logger.info('Iniciando aplicação', { port: process.env.PORT });
try {
const result = await someFunction();
logger.info('Função executada com sucesso', { data: result });
} catch (e) {
logger.error('Erro na função', { error: e });
}
logger.warn('Algo que pode gerar um problema futuramente');
logger.debug('Alguma informação para debug', { data: [1, 2, 3, 4] });
const context = {
engine: 'RB26',
price: 100000,
imported: true
}
logger.debug('Nova compra de carro', context);
Contato
Em caso de dúvidas sobre a utilização ou configuração do logger, favor encaminhar um email para rsouza@anota.ai.