Yet another email transport for winston.
$ npm install winston winston-mail-lite
const winston = require('winston');
const Mail = require('winston-mail-lite');
const transport = new Mail(options);
const logger = winston.createLogger({ transports: [transport] });
The Mail transport uses nodemailer behind the scenes.
Options specific to winston-mail-lite
are the following:
transportOptions
: options passed tocreateTransport()
(for SMTP transport, for other transports). By default, JSON transport is used.messageOptions
: options passed totransport.sendMail()
. The most common options are:from
: email address of the sender; if nothing is provided, defaults towinston@[server-host-name]
, whereserver-host-name
is whatos.hostname()
returns;to
: email address of the recipient; this option is required;subject
: the subject of the email; defaults toWinston Message
. Supports{{ level }}
and{{ message }}
placeholders (logs severity and the first line of the message respectively).
winston-mail-lite
was inspired by winston-mail.
The key differences are:
winston-mail-lite
has less dependencies;- uses
nodemailer
instead of emailjs; - has all of its dependencies up-to-date (winston-mail depends on a package with a vulnerability);
- supports only winston >= 3;
- has much more simplier codebase.