1.0.14 • Published 2 months ago
@laqus/logsjs v1.0.14
Laqus.LogsJS
Essa biblioteca tem o Objetivo de simplificar o processo de "Logs", com LogLevels, Timestamps e Obscurecencia de Atributos, assim alinhados com os Logs do CloudWatch, juntamente com seus respectivos filtros;
Como instalar
john@doe:~$ npm install @laqus/logsjs
Variáveis de Ambiente
Para a utilização dessa biblioteca é necessário duas Variáveis de Ambiente
LAQUS_APP_NAME = $LAQUS_APP_NAME | None
LAQUS_LOG_LEVEL = Information | Debug | Warning | Error | Critical
Para da variável
$LAQUS_APP_NAME
caso não seja passado valores para ela, o valor atribuito seráNone
.A variável
$LAQUS_LOG_LEVEL
aceita o Enum acima, para que a aplicação saiba, qual tipo de LogLevel ela estará mostrando no stdout, caso seja passado um tipo Diferente, não será mostrado nada no stdout;
/* Example */
require('dotenv/config')
/*
# Example .env
LAQUS_APP_NAME = Laqus_Emissoes
LAQUS_LOG_LEVEL = Information
*/
const { LaqusLogger } = require('@laqus/logsjs');
const Logger = new LaqusLogger('Application/Test');
Logger.info({ message: "text test" }); // Will show off
Logger.warn({ message: "text test" }); // Will NOT show off
/* OUTPUT
> node index.js
{
"appName": "Laqus_Emissoes",
"dateTime": "01-09-2023 13:04:42",
"LogLevel": "Information",
"text": "text test",
"category": "Application/Test"
}
*/
Exemplo de utilização
require('dotenv/config')
const { LaqusLogger } = require('@laqus/logsjs')
const logger = new LaqusLogger('Application/Test')
logger.info({
message: 'blah blah blah',
correlationId: '14ee059c-6e06-460f-b29b-c74f14789bbf',
obscuredFields: null,
data: {
app: 'onboarding-api',
context: 'cadastro',
error: null,
props: null,
sourceClass: 'OnboardingController',
sourceMethod: 'getAll'
}
});
/* OUTPUT:
{
"dateTime": "01-09-2023 11:28:10",
"LogLevel": "INFO",
"text": [
{
"teste": {
"a": [
{
"abc": "abc"
}
]
},
"bool": "******",
"abc": "abc"
}
]
}
*/
OBS: O atributo dateTime
está formatado com o formato PT-BR, e com o timezone America/Recife
.