📄 Make rotation file with time or size.
Install with npm
:
$ npm i --save node-rotation-file
The minimum version of Node to use node-rotation-file
is v10.0.0
.
To read more information about node writable stream read : documentation.
const RotationFileStream = require('node-rotation-file')
const stream = new RotationFileStream({
path: './logs/output.log',
maxTime: '1D',
maxSize: '10m',
maxArchives: 14,
archivesDirectory: './logs/archives',
compressType: 'gzip'
})
for (let i = 0; i < 1e5; ++i) {
stream.write('Helloworld!\n')
}
stream.end('Last line...')
-
-
Type: string
-
Default:
The file path location.
-
-
-
Type: null | number | string
-
Default: "10m"
The size as integer number, string tag or null.
-
-
-
Type: null | number | string
-
Default: "1D"
The size as integer number, string tag or null.
-
-
-
Type: null | number
-
Default: 14
The number of file to keep in history.
-
-
-
Type: string
-
Default: dirname(path)
The directory location where archives are stored.
-
-
-
Type: string
-
Default: "gzip"
The compression type.
-
-
- Emittable: false
An event emitted once at stream initialization.
-
- Emittable: true
An event emitted once when an error is encountered/throwed. It's can be used to throw an error and ending the stream.
-
- Emittable: true
An event emitted when stream will start a rotation. It's can be used to start a rotation.
-
- Emittable: false
An event emitted when the stream start to openning a writing sub-stream.
-
- Emittable: false
An event emitted when the stream is ready to write.
-
- Emittable: false
An event emitted when the stream start to closing the writing sub-stream.
-
- Emittable: false
An event emitted when the stream is ready to write again.
-
- Emittable: false
An event emitted after the stream closing fine.