From 21f7f02a6347171fb08cfb795ec3ec7130391044 Mon Sep 17 00:00:00 2001 From: Wolfgang Hottgenroth Date: Fri, 25 Aug 2017 18:13:10 +0200 Subject: [PATCH] averaging fixed --- dist/missingeventdetector.js | 8 +++++--- src/missingeventdetector.ts | 8 +++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/dist/missingeventdetector.js b/dist/missingeventdetector.js index 1e7c94a..50b6923 100644 --- a/dist/missingeventdetector.js +++ b/dist/missingeventdetector.js @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); const log = require("./log"); const CallChain = require("./callchain"); const Processor = require("./processor"); -const CHECK_PERIOD = 10; // seconds +const CHECK_PERIOD = 60; // seconds class ClientEntry { } class MissingEventProcessor extends Processor.AProcessor { @@ -28,7 +28,9 @@ class MissingEventProcessor extends Processor.AProcessor { clientEntry.delay = currentTime - clientEntry.lastEvent; clientEntry.lastEvent = currentTime; clientEntry.count += 1; - clientEntry.delaySum += clientEntry.delay; + if (clientEntry.count >= 1) { + clientEntry.delaySum += clientEntry.delay; + } clientEntry.avgDelay = clientEntry.delaySum / clientEntry.count; this.clientMap.set(client, clientEntry); log.info(`Entry for ${client} updated`); @@ -38,7 +40,7 @@ class MissingEventProcessor extends Processor.AProcessor { clientEntry.client = client; clientEntry.lastEvent = currentTime; clientEntry.delay = 0; - clientEntry.count = 0; + clientEntry.count = -1; clientEntry.delaySum = 0; clientEntry.avgDelay = 0; this.clientMap.set(client, clientEntry); diff --git a/src/missingeventdetector.ts b/src/missingeventdetector.ts index 023c001..9c93f4f 100644 --- a/src/missingeventdetector.ts +++ b/src/missingeventdetector.ts @@ -3,7 +3,7 @@ import * as CallChain from './callchain' import * as Processor from './processor' -const CHECK_PERIOD : number = 10 // seconds +const CHECK_PERIOD : number = 60 // seconds class ClientEntry { client : string @@ -39,7 +39,9 @@ class MissingEventProcessor extends Processor.AProcessor { clientEntry.delay = currentTime - clientEntry.lastEvent clientEntry.lastEvent = currentTime clientEntry.count += 1 - clientEntry.delaySum += clientEntry.delay + if (clientEntry.count >= 1) { + clientEntry.delaySum += clientEntry.delay + } clientEntry.avgDelay = clientEntry.delaySum / clientEntry.count this.clientMap.set(client, clientEntry) log.info(`Entry for ${client} updated`) @@ -48,7 +50,7 @@ class MissingEventProcessor extends Processor.AProcessor { clientEntry.client = client clientEntry.lastEvent = currentTime clientEntry.delay = 0 - clientEntry.count = 0 + clientEntry.count = -1 clientEntry.delaySum = 0 clientEntry.avgDelay = 0 this.clientMap.set(client, clientEntry)