From: bert hubert Date: Thu, 11 Dec 2014 20:40:20 +0000 (+0100) Subject: fix up latency reporting for sub-millisecond latencies (would clip to 0) X-Git-Tag: auth-3.4.2~15^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0678b251c464f1809746ac5848b08c21ed368beb;p=thirdparty%2Fpdns.git fix up latency reporting for sub-millisecond latencies (would clip to 0) --- diff --git a/pdns/common_startup.cc b/pdns/common_startup.cc index f4635c3e86..c1abe1d26b 100644 --- a/pdns/common_startup.cc +++ b/pdns/common_startup.cc @@ -179,8 +179,9 @@ static uint64_t getSysUserTimeMsec(const std::string& str) struct rusage ru; getrusage(RUSAGE_SELF, &ru); - if(str=="sys-msec") + if(str=="sys-msec") { return (ru.ru_stime.tv_sec*1000ULL + ru.ru_stime.tv_usec/1000); + } else return (ru.ru_utime.tv_sec*1000ULL + ru.ru_utime.tv_usec/1000); @@ -287,8 +288,7 @@ void sendout(const AnswerData &AD) N->send(AD.A); int diff=AD.A->d_dt.udiff(); - avg_latency=(int)(1023*avg_latency/1024+diff/1024); - + avg_latency=(int)(0.999*avg_latency+0.001*diff); delete AD.A; }