12345678910111213141516171819202122232425262728293031323334353637 |
- #!/usr/bin/env node
- var cli = require('cli'),
- options = cli.parse({
- leave: ['l', 'Period of time', 'string', '6m'],
- name: ['n', 'MongoDb database name', 'string', 'statsd'],
- host: ['h', 'MongoDb host', 'string', 'mongodb'],
- port: ['p', 'MongoDb port', 'string', '27017']
- })
- ;
- var mongo = require('mongodb');
- var moment = require('moment');
- var n = parseInt(options.leave, 10);
- var from = moment().subtract(n, options.leave.replace(n, '')).format('X');
- var to = moment().format('X');
- mongo.connect("mongodb://" + options.host + ":" + options.port + "/" + options.name, function (err, db) {
- if (err) {
- db.close();
- console.log(err);
- throw err;
- }
- db.listCollections().toArray(function(err, collInfos) {
- if (err) {
- db.close();
- console.log(err);
- throw err;
- }
- for (var i = 0; i < collInfos.length; i++) {
- console.log('db.collection('+collInfos[i].name+').remove({ time: { $lte: '+from+', $gte: '+to+' } })');
- db.collection(""+collInfos[i].name).remove({ time: { $lte: from, $gte: to } });
- }
- db.close();
- });
- });
|