1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- #!/usr/bin/env node
- var cli = require('cli'),
- options = cli.parse({
- leave: ['l', 'Period of time', 'string', '1d'],
- host: ['h', 'MySQL host', 'string', 'mysql'],
- port: ['p', 'MySQL port', 'string', '3306'],
- user: ['u', 'MySQL user', 'string', 'root'],
- password: ['pw', 'MySQL password', 'string', '235r2342gtfsw'],
- database: ['d', 'MySQL database', 'string', 'statsd_db']
- })
- ;
- var mysql = require('mysql');
- var connection = mysql.createConnection({
- host: options.host,
- port: options.port,
- user: options.user,
- password: options.password,
- database: options.database,
- multipleStatements: true
- });
- 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');
- var mysql_tables = ['gauges_statistics', 'counters_statistics', 'timers_statistics', 'sets_statistics'];
- for (var i = 0; i < mysql_tables.length; i++) {
- console.log('DELETE FROM '+mysql_tables[i]+' WHERE timestamp <= '+from+' OR timestamp >= '+to+';');
- connection.query('DELETE FROM '+mysql_tables[i]+' WHERE timestamp <= '+from+' OR timestamp >= '+to+';', function (err, rows, fields) {
- if (err) {
- connection.end();
- console.log(err);
- throw err;
- }
- for (var i = 0; i <= rows.length - 1; i++) {
- console.log(rows[i]);
- }
- });
- }
- connection.end();
|