Categories
JavaScript Answers

How to add logging with Node.js?

Spread the love

Sometimes, we want to add logging with Node.js.

In this article, we’ll look at how to add logging with Node.js.

How to add logging with Node.js?

To add logging with Node.js, we can use the winston package.

We install it by running

npm i winston

Then we use it by writing

const winston = require('winston');

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

We create a new winston logger using the winston.Logger constructor.

We call the constructor with an object that lets us set the transports option to specify where to write the log output.

The transports option is set to an array that specifies we write log items with level error to error.log.

And we write everything else to combined.log.

The format is set to winston.format.json so the log entries are in JSON format.

And the default log item level is 'info'.

We then log entries with

logger.info('log to file');

to log something with level info.

Conclusion

To add logging with Node.js, we can use the winston package.

By John Au-Yeung

Web developer specializing in React, Vue, and front end development.

Leave a Reply

Your email address will not be published. Required fields are marked *