fsg

file-sequence-generator

A nodejs tool to generate a sequence of filenames for logging

Showing:

Popularity

Downloads/wk

1

GitHub Stars

1

Maintenance

Last Commit

5yrs ago

Contributors

0

Package

Dependencies

3

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

file-sequence-generator

A NodeJS tool to generator a sequence of file names for logging (also compressed old files)

MIT licensed CircleCI

Sometimes you need to keep versions of logs as you run a script several times, or every time you restart your server. As logs get older you compress them, and remove them after a while. This package includes several function that will allow you to do this from within your NodeJS code and keep it consistent thru different logs. It also allows you to specify options on a per log basis.

Installation

npm install --save file-sequence-generator

Example

var fileSeq = require('file-sequence-generator');
// logs folder must exists already
var filepath = './logs/myjob.txt';
// get the functions from file-sequence-generator
var fileSeqInit = fileSeq.fileSeqInit;
var fileSeqNext = fileSeq.fileSeqNext;
// initialize the generator settings within ./logs/.file-sequences/myjob.txt.json as JSON
fileSeqInit(filepath, { keep: 2, compressed: 3, max: 10});
// generate the file ./logs/myjob.txt.01 as the first in the sequence
fileSeqNext(filepath);
// if you call fileSeqNext 3 more times you will end up with 4 files
//   ./logs/myjob.txt.01.gz <-- stores this file as compressed
//   ./logs/myjob.txt.02.gz <-- stores this file as compressed 
//   ./logs/myjob.txt.03    <-- keeps the original file
//   ./logs/myjob.txt.04    <-- and so one
// based on the settings it will try to keep 3 compressed file and 2 uncompressed
// and when it gets to file ./logs/myjob.txt.09 it will loop around to .00 and so 
// til infinitum.

Test

npm run test

Pull Request

please look at the PULL_REQUEST_TEMPLATE.md

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial