diff --git a/bin/databases-config.js b/bin/databases-config.js index eec74d5..ca0bab4 100644 --- a/bin/databases-config.js +++ b/bin/databases-config.js @@ -1,6 +1,6 @@ module.exports = { events: { - "mongo-host": "192.168.56.101", + "mongo-host": "localhost", "mongo-port": 27017, "mongo-database": "events", "mongo-username": null, @@ -8,7 +8,7 @@ module.exports = { "collectionSize": 1024 * 1024 * 1024 }, aggregations: { - "mongo-host": "192.168.56.101", + "mongo-host": "localhost", "mongo-port": 27017, "mongo-database": "aggregations", "mongo-username": null, diff --git a/bin/generator-config.js b/bin/generator-config.js index 7cfd14e..e2208a9 100644 --- a/bin/generator-config.js +++ b/bin/generator-config.js @@ -3,7 +3,7 @@ module.exports = { "intervalInMS": 60000, "sampleRateInMS": 100, "data": { - "country": ["SHOPCADE", "SHOPCADE", "SHOPCADE", "SHOPCADE", "SHOPCADE", "SHOPCADE", "US", "US", "US", "US", "US", "US", "US", "US", "US", "US", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "IN", "IN", "IN", "IN", "IN", "IN", "FR", "FR", "FR", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "AD", "AE", "AF", "AG", "AI", "AL", "AM", "AO", "AQ", "AR", "AS", "AT", "AU", "AW", "AX", "AZ", "BA", "BB", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BL", "BM", "BN", "BO", "BQ", "BQ", "BR", "BS", "BT", "BV", "BW", "BY", "BZ", "CA", "CC", "CD", "CF", "CG", "CH", "CI", "CK", "CL", "CM", "CN", "CO", "CR", "CU", "CV", "CW", "CX", "CY", "CZ", "DE", "DJ", "DK", "DM", "DO", "DZ", "EC", "EE", "EG", "EH", "ER", "ES", "ET", "FI", "FJ", "FK", "FM", "FO", "GA", "GD", "GE", "GF", "GG", "GH", "GI", "GL", "GM", "GN", "GP", "GQ", "GR", "GS", "GT", "GU", "GW", "GY", "HK", "HM", "HN", "HR", "HT", "HU", "ID", "IE", "IL", "IM", "IO", "IQ", "IR", "IS", "IT", "JE", "JM", "JO", "KE", "KG", "KH", "KI", "KM", "KN", "KP", "KR", "KW", "KY", "KZ", "LA", "LB", "LC", "LI", "LK", "LR", "LS", "LT", "LU", "LV", "LY", "MA", "MC", "MD", "ME", "MF", "MG", "MH", "MK", "ML", "MM", "MN", "MO", "MP", "MQ", "MR", "MS", "MT", "MU", "MV", "MW", "MX", "MY", "MZ", "NA", "NC", "NE", "NF", "NG", "NI", "NL", "NO", "NP", "NR", "NU", "NZ", "OM", "PA", "PE", "PF", "PG", "PH", "PK", "PL", "PM", "PN", "PR", "PS", "PT", "PW", "PY", "QA", "RE", "RO", "RS", "RU", "RW", "SA", "SB", "SC", "SD", "SE", "SG", "SH", "SI", "SJ", "SK", "SL", "SM", "SN", "SO", "SR", "SS", "ST", "SV", "SX", "SY", "SZ", "TC", "TD", "TF", "TG", "TH", "TJ", "TK", "TL", "TM", "TN", "TO", "TR", "TT", "TV", "TW", "TZ", "UA", "UG", "UM", "UY", "UZ", "VA", "VC", "VE", "VG", "VI", "VN", "VU", "WF", "WS", "YE", "YT", "ZA", "ZM", "ZW"], + "country": ["US", "US", "US", "US", "US", "US", "US", "US", "US", "US", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "GB", "IN", "IN", "IN", "IN", "IN", "IN", "FR", "FR", "FR", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "JP", "AD", "AE", "AF", "AG", "AI", "AL", "AM", "AO", "AQ", "AR", "AS", "AT", "AU", "AW", "AX", "AZ", "BA", "BB", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BL", "BM", "BN", "BO", "BQ", "BQ", "BR", "BS", "BT", "BV", "BW", "BY", "BZ", "CA", "CC", "CD", "CF", "CG", "CH", "CI", "CK", "CL", "CM", "CN", "CO", "CR", "CU", "CV", "CW", "CX", "CY", "CZ", "DE", "DJ", "DK", "DM", "DO", "DZ", "EC", "EE", "EG", "EH", "ER", "ES", "ET", "FI", "FJ", "FK", "FM", "FO", "GA", "GD", "GE", "GF", "GG", "GH", "GI", "GL", "GM", "GN", "GP", "GQ", "GR", "GS", "GT", "GU", "GW", "GY", "HK", "HM", "HN", "HR", "HT", "HU", "ID", "IE", "IL", "IM", "IO", "IQ", "IR", "IS", "IT", "JE", "JM", "JO", "KE", "KG", "KH", "KI", "KM", "KN", "KP", "KR", "KW", "KY", "KZ", "LA", "LB", "LC", "LI", "LK", "LR", "LS", "LT", "LU", "LV", "LY", "MA", "MC", "MD", "ME", "MF", "MG", "MH", "MK", "ML", "MM", "MN", "MO", "MP", "MQ", "MR", "MS", "MT", "MU", "MV", "MW", "MX", "MY", "MZ", "NA", "NC", "NE", "NF", "NG", "NI", "NL", "NO", "NP", "NR", "NU", "NZ", "OM", "PA", "PE", "PF", "PG", "PH", "PK", "PL", "PM", "PN", "PR", "PS", "PT", "PW", "PY", "QA", "RE", "RO", "RS", "RU", "RW", "SA", "SB", "SC", "SD", "SE", "SG", "SH", "SI", "SJ", "SK", "SL", "SM", "SN", "SO", "SR", "SS", "ST", "SV", "SX", "SY", "SZ", "TC", "TD", "TF", "TG", "TH", "TJ", "TK", "TL", "TM", "TN", "TO", "TR", "TT", "TV", "TW", "TZ", "UA", "UG", "UM", "UY", "UZ", "VA", "VC", "VE", "VG", "VI", "VN", "VU", "WF", "WS", "YE", "YT", "ZA", "ZM", "ZW"], "device": ["web", "iphone", "android", "android", "android", "android", "android", "android", "android", "android", "android", "android", "android", "android"], "gender": ["male", "male", "male", "female"], "type": ["t1"] diff --git a/bin/generator.js b/bin/generator.js index 7cf4007..e440712 100644 --- a/bin/generator.js +++ b/bin/generator.js @@ -61,7 +61,7 @@ var options = require("./generator-config.js"), } }, - sendForPacketsForInterval: function (arrayOfPacketsInInterval) { + sendForPacketsForInterval: function (arrayOfPacketsInInterval, callback) { var i, doSetTimeout = function (i) { setTimeout(function () { @@ -74,12 +74,15 @@ var options = require("./generator-config.js"), for (i = 0; i < arrayOfPacketsInInterval.length; i++) { doSetTimeout(i); } + setTimeout(callback, arrayOfPacketsInInterval.length * options.sampleRateInMS); } }; ws.on('open', function () { console.log("connected!"); var arrayOfPacketsInInterval = packetGenerator.computePacketsPerSampleInInterval(options.packetsInInterval, samples); - packetGenerator.sendForPacketsForInterval(arrayOfPacketsInInterval); + packetGenerator.sendForPacketsForInterval(arrayOfPacketsInInterval, function () { + ws.close(); + }); }); diff --git a/public/js/analytics.js b/public/js/analytics.js index ed801e2..2c2efa8 100644 --- a/public/js/analytics.js +++ b/public/js/analytics.js @@ -97,27 +97,27 @@ function Chart(config) { .append(''); // svg for chart } - $("#" + this.chartAnchor + ' .control') - .append(myUtils.createElem('p')) - .append(myUtils.createElem('button', {className: 'pause'}, 'Pause')) // pause button - .append(myUtils.createElem('button', {className: 'resume'}, 'Resume')) // resume - ; - - $("#" + this.chartAnchor + ' button.pause') - .click(function () { - that.pause(); - }) - ; - $("#" + this.chartAnchor + ' button.resume') - .click(function () { - that.resume(); - }); if (callback) { callback(); } }; this.refreshAll = function () { - // - no need for now - this.dataHandler(); + var control, + i, + selectElem, + optionElem; + control = $("#" + this.chartAnchor + ' .control'); + control.append(myUtils.createElem('p')); + + if (this.dimensions && Array.isArray(this.dimensions)) { + for (i = 0; i < this.dimensions.length; i++) { + selectElem = myUtils.createElem('select', {className: 'select', id: this.chartAnchor + "-" + this.dimensions[i].name}); + + selectElem.add(myUtils.createElem('option', {"value": 1})); + control.append(selectElem); + } + } + that.refreshChart(); }; this.setChartAnchor = function (chartAnchor) { @@ -280,7 +280,7 @@ var chartsConfig = [ }, refreshFrequency: 10 * 1e3 } -// { + // { // name: "T1 Events", // chartType: "EventsChart", //can be "EventsChart" or "AggregatedChart" - meaning one or multiple dimensions // renderingType: "xxx", //choose a style diff --git a/start.sh b/start.sh index 0149614..87b7495 100755 --- a/start.sh +++ b/start.sh @@ -9,7 +9,7 @@ LOGSDIR=${SCRIPTDIR}/logs; node=`which node`; if [[ -z ${node} ]]; then - node="/usr/local/bin/nodess1"; #fallback + node="/usr/local/bin/node"; #fallback fi if [ ! -f "${node}" ]; then @@ -17,12 +17,11 @@ if [ ! -f "${node}" ]; then fi -${node} ${BINDIR}/collector.js >> ${LOGSDIR}/collector.log & -${node} ${BINDIR}/aggregator.js >> ${LOGSDIR}/aggregator.log & -${node} ${BINDIR}/disperser.js >> ${LOGSDIR}/disperser.log & -${node} ${BINDIR}/webServer.js >> ${LOGSDIR}/webServer.log & -${node} ${BINDIR}/generator.js >> ${LOGSDIR}/generator.log & +${node} ${BINDIR}/collector.js 2>&1 >> ${LOGSDIR}/collector.log & +${node} ${BINDIR}/aggregator.js 2>&1 >> ${LOGSDIR}/aggregator.log & +${node} ${BINDIR}/disperser.js 2>&1 >> ${LOGSDIR}/disperser.log & +${node} ${BINDIR}/webServer.js 2>&1 >> ${LOGSDIR}/webServer.log & +sleep 10; +${node} ${BINDIR}/generator.js 2>&1 >> ${LOGSDIR}/generator.log & -tail -f ${LOGSDIR}/* -