winston-logrotator
v1.0.2
Published
Winston rotate the file based on datepattern and limit the file size to rotate
Downloads
2
Maintainers
Readme
winston-logrotator
A transport for winston which logs to a rotating file each day.
Usage
var winston = require("winston");
var rotate = require("winston-logrotator");
let dialyRotate = rotate.createInstance({
label: 'file#error',
level: 'error',
size: "1K",
filename: "error.log",
datePattern: 'yyyy-MM-dd-',
prepend: true,
handleExceptions: true
});
var logger = new winston.Logger({
transports: [dialyRotate]
});
logger.info('Hello World!');
The DailyRotateFile transport can rotate files by minute, hour, day, month, year or weekday. In addition to the options accepted by the File transport, the Daily Rotate File Transport also accepts the following options:
- datePattern: A string representing the pattern to be used when appending the date to the filename (default 'yyyy-MM-dd'). The meta characters used in this string will dictate the frequency of the file rotation. For example, if your datePattern is simply 'HH' you will end up with 24 log files that are picked up and appended to every day.
- prepend: Defines if the rolling time of the log file should be prepended at the beginning of the filename (default 'false').
- localTime: A boolean to define whether time stamps should be local (default 'false' means that UTC time will be used).
- zippedArchive: A boolean to define whether or not to gzip archived log files (default 'false').
Valid meta characters in the datePattern are:
- yy: Last two digits of the year.
- yyyy: Full year.
- M: The month.
- MM: The zero padded month.
- d: The day.
- dd: The zero padded day.
- H: The hour.
- HH: The zero padded hour.
- m: The minute.
- mm: The zero padded minute.
- ddd: The weekday (Mon, Tue, ..., Sun).
Metadata: Logged via util.inspect(meta);
Options
| Field | Required | Description | | --------------- |-------------- | ----------------------------------- | | label | no | form which micro service api throwing log | | filename | yes | The filename of the logfile to write output to. | | colorize | no | Boolean flag indicating if we should colorize output.| | timestamp | no | Boolean flag indicating if we should prepend output with timestamps (default false). If function is specified, its return value will be used instead of timestamps. | | json | no | If true, messages will be logged as JSON (default true). | | size | no | The max file size of a log before rotation occurs. Supports 1024, 1k, 1m, 1g. Defaults to 100m | | keep | no | The number of rotated log files to keep (including the primary log file). Defaults to 5 | | compress | no | Optionally compress rotated files with gzip. Defaults to true. |
Additonaly support all the winston file options
LICENSE
MIT