internal long GetCurrentLatency(LatencyTrackerKey trackingKey) { if (this.latencyTrackerStartTimes.ContainsKey(trackingKey)) { return(this.latencyTrackerStopwatch.ElapsedMilliseconds - this.latencyTrackerStartTimes[trackingKey]); } return(-1L); }
internal void StartTracking(LatencyTrackerKey trackingKey, bool resetValue = false) { if (!this.latencyTrackerStartTimes.ContainsKey(trackingKey)) { this.latencyTrackerStartTimes.Add(trackingKey, this.latencyTrackerStopwatch.ElapsedMilliseconds); return; } this.latencyTrackerStartTimes[trackingKey] = this.latencyTrackerStopwatch.ElapsedMilliseconds; }
internal void LogElapsedTimeAsLatency(RequestDetailsLogger logger, LatencyTrackerKey trackerKey, HttpProxyMetadata protocolLogKey) { long currentLatency = this.GetCurrentLatency(trackerKey); if (currentLatency >= 0L) { logger.UpdateLatency(protocolLogKey, (double)currentLatency); } }