public void CollectorShouldIgnoreInvalidMetricNames() { var collector = new MetricsCollector(); const string invalidName = "Invalid@Name"; collector.IncrementCounter(invalidName, 1); using (collector.StartTimer(invalidName)) { collector.Record(invalidName, 0, Unit.None); } Assert.Equal(string.Empty, collector.FlushToString()); }
public async Task TestStartStopTimers() { var collector = new MetricsCollector(); using (collector.StartTimer("Clock1")) { await Task.Delay(100); } using (collector.StartTimer("Clock2")) { await Task.Delay(200); } var metrics = collector.GetMetrics(); Assert.Equal(2, metrics.Count); RecorderUtils.AssertRecorderOutput(new[] { 100.0M }, Unit.MilliSecond, metrics["Clock1"].FlushToString(), 10.0M); RecorderUtils.AssertRecorderOutput(new[] { 200.0M }, Unit.MilliSecond, metrics["Clock2"].FlushToString(), 10.0M); }