1.0.13 • Published 5 months ago

@laqus/logsjs v1.0.13

Weekly downloads
-
License
ISC
Repository
-
Last release
5 months ago

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.

1.0.13

5 months ago

1.0.12

5 months ago

1.0.10

5 months ago

1.0.6

5 months ago

1.0.5

7 months ago

1.0.4

8 months ago

1.0.3

8 months ago

1.0.2

8 months ago

1.0.1

8 months ago

1.0.0

8 months ago