1
resposta

[Bug] Logger

meu arquivo error.log e combined.log estão trazendo a mesma mensagem, mesmo forçando um erro na url da api (como mostrado no curso). A mensagem é a mesma: {"level":"info","message":"Posts obtidos com sucesso!"}

Meu arquivo logger.js esta assim:

import { createLogger, format, transports } from 'winston';

const logger = createLogger({
    level: 'info',
    format: format.json(),
    transports: [
        new transports.File({ filename: 'error.log' }),
        new transports.File({ filename: 'combined.log' }),
    ],
});

export default logger;
1 resposta

Ola!

O problema está no seu logger: você não definiu que o arquivo error.log deve receber apenas mensagens de erro. Atualmente, ambos estão gravando qualquer mensagem no nível "info" ou superior.

###Solução simples:

Você precisa definir os níveis nos transports. Assim:

new transports.File({ filename: 'error.log', level: 'error' }),
    new transports.File({ filename: 'combined.log' }),
  • level: 'error' no error.log faz com que apenas erros sejam gravados lá.
  • combined.log continua registrando tudo que é "info" ou mais crítico (info, warn, error).