Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Estrutura para log #27

Open
pabrrs opened this issue Jun 10, 2020 · 1 comment
Open

Estrutura para log #27

pabrrs opened this issue Jun 10, 2020 · 1 comment
Assignees
Labels
Tipo: Discussão Discussão sobre mudanças ou decisões

Comments

@pabrrs
Copy link
Member

pabrrs commented Jun 10, 2020

Problema

A implementação do boilerplate contém um wrapper da lib PinoJS criado em
src/client/logger-client.js, que já possúi toda configuração básica para se utilizar os métodos padrões de um logger (info, warn, error, etc).

Dessa forma, precisamos definir um padrão dos logs gerados pela API, descrever como será o JSON enviado ao terminal e quais campos devem estar presentes, para que seja possível indexar em um agregador e gerar estatísticas dessas informações.

Além disso, precisamos debater se iremos utilizar alguma plataforma (kibana, serviço em cloud, etc) para armazenar os logs, mantendo seu histórico ou apenas joga-los no terminal. Acredito que o @deniojunior poderá nos ajudar.

Sugestão

Acredito que possamos utilizar a seguinte chamada no código:

logger.method({
    action: 'service.method', // indica onde o log foi chamado no código
    message: 'foo bla',       // mensagem descritiva da operação
    meta: {                   // metadados da operação (opcional)      
       color: 'red',
       user: 'john'
   }
})
@pabrrs pabrrs added the Tipo: Discussão Discussão sobre mudanças ou decisões label Jun 10, 2020
@rodrigondec
Copy link
Member

Não tenho muito experiência com logs e monitoramento de aplicações.

Mas voto na alternativa de ter os serviços/plataformas especializadas para isso.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Tipo: Discussão Discussão sobre mudanças ou decisões
Projects
None yet
Development

No branches or pull requests

7 participants