log-file-remover
v0.1.20
Published
A tool to automate removal of generated logs after a set amount of time.
Downloads
27
Readme
log-file-remover
A tool to automate removal of generated logs after a set amount of time.
##Install npm install log-file-remover
##Usage
- require the library in your code
- entry point is index.js
var logRemover = require('log-file-remover');
logRemover.schedule(config);
##Config JSON Object The library will accept a custom config object being passed into the schedule function. If no object is passed through then the default config will be used.
##Default object passed into the scheduler unless otherwise specified.
{
"timeZone": "Africa/Johannesburg",
"logging": {
"file": {
"folder": "/logs",
"retention": {
"units": "days",
"amount": 7
},
"timeToTake": "mtime"
},
"startTheJobAutomatically": false,
"cronTime": "* * * * *"
}
}
If startTheJobAutomatically is set to false, remember to call job.start(), assuming job is the variable you set the cron job to. Unfortunately, for now this is hard coded to true.
For the timeZone if you need others, check the moment-timezone npm module
timeToTake is the time which will be looked at when deleting logs.
timeToTake is either mtime, ctime or fileName. The modified time, the created time or a date specified in the file name.
The filename looked at follows this expression: log-file-name.YYYY-MM-DDTHH
Example:
crash-log.2016-01-13T14
cronTime uses standard cron input. This allows for more explicit control of the timed settings of the cron Job
##Some Examples of Cron Times:
everySecond: '* * * * * *',
everyMinute: '* * * * *',
everyHour: '00 00 * * * *',
every10Seconds: '*/6 * * * * *',
midnight: '00 00 00 * *',
everyDayAtTwoFifteen: '00 15 02 * * *'