var fastUpdate = function()

in source/web_site/js/dash.js [684:733]


    var fastUpdate = function() {
        var docClient = new AWS.DynamoDB.DocumentClient();

        var serviceTypeParams = retrieveParams("CallsPerServiceType", serviceCallQueryTime);

        while(isInSlowUpdate);
        isInFastUpdate = true;
        docClient.query(serviceTypeParams, function(err, data) {
            if (err) console.log(err);
            else {
                serviceCallQueryTime = fastUpdateLineChart(data, serviceCallChartData, serviceCallChart, serviceCallQueryTime, splitFunc) ;
            }

        });


        var ec2Params = retrieveParams("EC2Calls", ec2CallQueryTime);
        docClient.query(ec2Params, function(err, data) {
            if (err) console.log(err);
            else {
                //console.log(ec2CallChartData);

                ec2CallQueryTime = fastUpdateLineChart(data, ec2CallChartData, ec2CallChart, ec2CallQueryTime, function(label) { result = label.split('|')[1]; if (result == "null") return "SuccessfulCalls"; else return "Failure calls: " + result;}) ;
            }
        });
        isInFastUpdate = false;
        var anomalyParams = retrieveParams("AnomalyScore", anomalyScoreCurrentTime);

        docClient.query(anomalyParams, function(err, data) {
            if (err) console.log(err);
            else {
                var items = data.Items;
                for (var i=0; i<items.length; i++) {
                    anomalyCallLabels.push(getTimeLabel(items[i].EventTime));
                    anomalyCallTimes.push(new Date(toUTC(items[i].EventTime)).getTime());
                    ddbItem = JSON.parse(items[i].Data);
                    anomalyCallMap["Total Calls"].push(parseInt(Object.keys(ddbItem)[0].split("|")[0]));
                    anomalyCallMap["Anomaly Score"].push(parseFloat(Object.values(ddbItem)[0]));
                }
                if (items.length>0) {
                    anomalyScoreCurrentTime = items[items.length-1].EventTime;
                    updateData(anomalyChart, anomalyCallLabels, Object.values(anomalyCallMap), Object.keys(anomalyCallMap), true);
                }
            }
        });
        setTimeout( function() {
            fastUpdate();
        }, 10000);

    }