Files
Deep-Package-Inspection/test_countries3.js
T

31 lines
1.1 KiB
JavaScript

const mongoose = require('mongoose');
mongoose.connect('mongodb://backone_inspect:backone_inspect@mongodb.prod.proit.id:27017/backone_inspect_0').then(async () => {
const db = mongoose.connection.db;
const raw = await db.collection('countrystats').aggregate([
{ $match: { agent_uuid: 'F6-2V-DT-8A' } },
{ $group: {
_id: '$country_name',
download: { $sum: '$download' },
upload: { $sum: '$upload' }
}},
{ $sort: { download: -1 } },
{ $limit: 200 }
]).toArray();
const valid = raw.filter(r => r.download > 0 || r.upload > 0);
console.log(valid.length, 'valid countries for Kantor in CountryStat');
const flows = await db.collection('flows').aggregate([
{ $match: { agent_uuid: 'F6-2V-DT-8A', country_name: { $ne: null } } },
{ $group: {
_id: '$country_name',
download: { $sum: '$download' },
upload: { $sum: '$upload' }
}},
{ $sort: { download: -1 } },
{ $limit: 200 }
]).toArray();
const validFlows = flows.filter(r => r.download > 0 || r.upload > 0);
console.log(validFlows.length, 'valid countries for Kantor in Flow');
mongoose.disconnect();
});