public async Task Can_report_counter_with_items_and_tags() { // Arrange var expected = "{\"series\":[{\"metric\":\"test.test_counter__items.counter.total\",\"points\":[[1483232461,1]],\"type\":\"count\",\"interval\":10,\"tags\":[\"key1:value1\",\"key2:value2\",\"item:item1:value1\",\"unit:none\"]},{\"metric\":\"test.test_counter__items.counter.percent\",\"points\":[[1483232461,50]],\"type\":\"count\",\"interval\":10,\"tags\":[\"key1:value1\",\"key2:value2\",\"item:item1:value1\",\"unit:none\"]},{\"metric\":\"test.test_counter__items.counter.total\",\"points\":[[1483232461,1]],\"type\":\"count\",\"interval\":10,\"tags\":[\"key1:value1\",\"key2:value2\",\"item:item2:value2\",\"unit:none\"]},{\"metric\":\"test.test_counter__items.counter.percent\",\"points\":[[1483232461,50]],\"type\":\"count\",\"interval\":10,\"tags\":[\"key1:value1\",\"key2:value2\",\"item:item2:value2\",\"unit:none\"]},{\"metric\":\"test.test_counter.counter.value\",\"points\":[[1483232461,2]],\"type\":\"count\",\"interval\":10,\"tags\":[\"key1:value1\",\"key2:value2\",\"unit:none\"]}]}"; var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" })); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert await AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), FlushInterval, expected); }
public void Can_report_counter_with_items_and_tags() { // Arrange var expected = "test__test_counter__items,key1=value1,key2=value2,item=item1:value1,mtype=counter,unit=none total=1i,percent=50 1483232461000000000\ntest__test_counter__items,key1=value1,key2=value2,item=item2:value2,mtype=counter,unit=none total=1i,percent=50 1483232461000000000\ntest__test_counter,key1=value1,key2=value2,mtype=counter,unit=none value=2i 1483232461000000000\n"; var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" })); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public void Can_report_counter_with_items_and_tags() { // Arrange var expected = "counter.test.test_counter-SetItem.key1.value1.key2.value2.item.item1_value1.Total 1 1483232461\ncounter.test.test_counter-SetItem.key1.value1.key2.value2.item.item1_value1.Percent 50.00 1483232461\ncounter.test.test_counter-SetItem.key1.value1.key2.value2.item.item2_value2.Total 1 1483232461\ncounter.test.test_counter-SetItem.key1.value1.key2.value2.item.item2_value2.Percent 50.00 1483232461\ncounter.test.test_counter.key1.value1.key2.value2.Value 2 1483232461\n"; var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" })); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public async Task Counter_with_custom_sample_rate_with_multiple_data_point_should_sample_correctly() { // Arrange var sources = new List <MetricsDataValueSource>(); var timeStamp = _timestamp; var expected = "test.test_counter.counter.value:4|c|@0.5|#unit:none,timestamp:"; // Act for (var i = 0; i < 10000; ++i) { sources.Add(CreateMetricsDataValueSource(ref timeStamp)); } var emittedData = (await Serialize(sources, 0.5)).Split('\n'); // Assert (emittedData.Length > 4500 && emittedData.Length < 5500).Should().BeTrue(); emittedData[0].Should().StartWith(expected); MetricsDataValueSource CreateMetricsDataValueSource(ref DateTime timestamp) { var counter = new DefaultCounterMetric(); counter.Increment(1); counter.Increment(1); counter.Increment(1); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty); var valueSource = CreateValueSource("test", counters: counterValueSource); var result = new MetricsDataValueSource(timestamp, new[] { valueSource }); timestamp += TimeSpan.FromSeconds(1); return(result); } }
public void Can_report_counter_with_items_tags_when_multidimensional() { // Arrange var expected = "env.staging.counter.test.test_counter-SetItem.host.server1.key1.value1.key2.value2.item.item1_value1.Total 1 1483232461\nenv.staging.counter.test.test_counter-SetItem.host.server1.key1.value1.key2.value2.item.item1_value1.Percent 50.00 1483232461\nenv.staging.counter.test.test_counter-SetItem.host.server1.key1.value1.key2.value2.item.item2_value2.Total 1 1483232461\nenv.staging.counter.test.test_counter-SetItem.host.server1.key1.value1.key2.value2.item.item2_value2.Percent 50.00 1483232461\nenv.staging.counter.test.test_counter.host.server1.key1.value1.key2.value2.value 2 1483232461\n"; var counterTags = new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" }); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Concat(_tags, counterTags)); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public void can_report_counter_with_items_and_tags() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" })); var items = CreateReporterAndPayloadBuilder(); items.Item1.StartReportRun(metricsMock.Object); items.Item1.ReportMetric("test", counterValueSource); items.Item2.PayloadFormatted(). Should(). Be( "test__test_counter__items key1=value1 key2=value2 item=item1:value1 mtype=counter unit=none total=1i percent=50" + Environment.NewLine + "test__test_counter__items key1=value1 key2=value2 item=item2:value2 mtype=counter unit=none total=1i percent=50" + Environment.NewLine + "test__test_counter key1=value1 key2=value2 mtype=counter unit=none value=2i" + Environment.NewLine); }
public async Task Can_report_counter_with_items_tags_when_multidimensional() { // Arrange var expected = "test__test_counter__items,host=server1,env=staging,key1=value1,key2=value2,item=item1:value1,mtype=counter,unit=none total=1i,percent=50 1483232461000000000\ntest__test_counter__items,host=server1,env=staging,key1=value1,key2=value2,item=item2:value2,mtype=counter,unit=none total=1i,percent=50 1483232461000000000\ntest__test_counter,host=server1,env=staging,key1=value1,key2=value2,mtype=counter,unit=none value=2i 1483232461000000000\n"; var counterTags = new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" }); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Concat(_tags, counterTags)); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert await AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public void Can_report_counter_with_items_with_option_not_to_report_percentage() { // Arrange var expected = "test__test_counter__items,item=item1:value1,mtype=counter,unit=none total=1i 1483232461000000000\ntest__test_counter__items,item=item2:value2,mtype=counter,unit=none total=1i 1483232461000000000\ntest__test_counter,mtype=counter,unit=none value=2i 1483232461000000000\n"; var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty, reportItemPercentages: false); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public void Can_report_counter_with_items_with_option_not_to_report_percentage() { // Arrange var expected = "counter.test.test_counter-SetItem.item.item1_value1.Total 1 1483232461\ncounter.test.test_counter-SetItem.item.item2_value2.Total 1 1483232461\ncounter.test.test_counter.value 2 1483232461\n"; var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty, reportItemPercentages: false); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public void can_report_counter_with_items() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty); var payloadBuilder = new LineProtocolPayloadBuilder(_settings.DataKeys, _settings.MetricNameFormatter); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted(false). Should(). Be( "test__test_counter__items,item=item1:value1,mtype=counter,unit=none total=1i,percent=50\ntest__test_counter__items,item=item2:value2,mtype=counter,unit=none total=1i,percent=50\ntest__test_counter,mtype=counter,unit=none value=2i\n"); }
public void can_report_counter_with_items_with_option_not_to_report_percentage() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty, reportItemPercentages: false); var items = CreateReporterAndPayloadBuilder(); items.Item1.StartReportRun(metricsMock.Object); items.Item1.ReportMetric("test", counterValueSource); items.Item2.PayloadFormatted(). Should(). Be( "test__test_counter__items item=item1:value1 mtype=counter unit=none total=1i" + Environment.NewLine + "test__test_counter__items item=item2:value2 mtype=counter unit=none total=1i" + Environment.NewLine + "test__test_counter mtype=counter unit=none value=2i" + Environment.NewLine); }
public void can_report_counter_with_items_tags_when_multidimensional() { var counterTags = new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" }); var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Concat(_tags, counterTags)); var items = CreateReporterAndPayloadBuilder(); items.Item1.StartReportRun(metricsMock.Object); items.Item1.ReportMetric("test", counterValueSource); items.Item2.PayloadFormatted(). Should(). Be( "test__test_counter__items host=server1 env=staging key1=value1 key2=value2 item=item1:value1 mtype=counter unit=none total=1i percent=50" + Environment.NewLine + "test__test_counter__items host=server1 env=staging key1=value1 key2=value2 item=item2:value2 mtype=counter unit=none total=1i percent=50" + Environment.NewLine + "test__test_counter host=server1 env=staging key1=value1 key2=value2 mtype=counter unit=none value=2i" + Environment.NewLine); }
public void can_report_counter_with_items_and_tags() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" })); var payloadBuilder = new LineProtocolPayloadBuilder(); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted(). Should(). Be( "test__test_counter__items,key1=value1,key2=value2,item=item1:value1 total=1i,percent=50\ntest__test_counter__items,key1=value1,key2=value2,item=item2:value2 total=1i,percent=50\ntest__test_counter,key1=value1,key2=value2 value=2i\n"); }
public void can_report_counter_with_items() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty); var payloadBuilder = new TestPayloadBuilder(); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted(). Should(). Be( "test__test_counter__items item=item1:value1 mtype=counter total=1i percent=50" + Environment.NewLine + "test__test_counter__items item=item2:value2 mtype=counter total=1i percent=50" + Environment.NewLine + "test__test_counter mtype=counter value=2i" + Environment.NewLine); }
public void can_report_counter_with_items_tags_when_multidimensional() { var counterTags = new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" }); var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Concat(_tags, counterTags)); var payloadBuilder = new LineProtocolPayloadBuilder(); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted(). Should(). Be( "test__test_counter__items,host=server1,env=staging,key1=value1,key2=value2,item=item1:value1 total=1i,percent=50\ntest__test_counter__items,host=server1,env=staging,key1=value1,key2=value2,item=item2:value2 total=1i,percent=50\ntest__test_counter,host=server1,env=staging,key1=value1,key2=value2 value=2i\n"); }
public void can_report_counter_with_items_with_option_not_to_report_percentage() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty, reportItemPercentages: false); var payloadBuilder = new LineProtocolPayloadBuilder(); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted(). Should(). Be( "test__test_counter__items,item=item1:value1 total=1i\ntest__test_counter__items,item=item2:value2 total=1i\ntest__test_counter value=2i\n"); }
public async Task Can_report_counter_with_items_with_option_not_to_report_percentage() { // Arrange var expected = "test.test_counter__items.counter.item1:value1.total:1|c|#unit:none,timestamp:1483232461\n" + "test.test_counter__items.counter.item2:value2.total:1|c|#unit:none,timestamp:1483232461\n" + "test.test_counter.counter.value:2|c|#unit:none,timestamp:1483232461"; var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty, reportItemPercentages: false); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert await AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public void can_report_counter_with_items_and_tags() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(new MetricSetItem("item1", "value1"), 1); counter.Increment(new MetricSetItem("item2", "value2"), 1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, new MetricTags(new[] { "key1", "key2" }, new[] { "value1", "value2" })); var payloadBuilder = new GraphitePayloadBuilder(_settings.GraphiteSettings.MetricNameFormatter, _settings.DataKeys, Origin); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted(). Should(). Be( "counter.test.test_counter-SetItem.key1.value1.key2.value2.item.item1_value1.Total 1 0\ncounter.test.test_counter-SetItem.key1.value1.key2.value2.item.item1_value1.Percent 50.00 0\ncounter.test.test_counter-SetItem.key1.value1.key2.value2.item.item2_value2.Total 1 0\ncounter.test.test_counter-SetItem.key1.value1.key2.value2.item.item2_value2.Percent 50.00 0\ncounter.test.test_counter.key1.value1.key2.value2.value 2 0\n"); }
public void can_report_counters__when_multidimensional() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, _tags); var items = CreateReporterAndPayloadBuilder(); items.Item1.StartReportRun(metricsMock.Object); items.Item1.ReportMetric("test", counterValueSource); items.Item2.PayloadFormatted().Should().Be("test__test_counter host=server1 env=staging mtype=counter unit=none value=1i" + Environment.NewLine); }
public void can_report_counters() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty); var items = CreateReporterAndPayloadBuilder(); items.Item1.StartReportRun(metricsMock.Object); items.Item1.ReportMetric("test", counterValueSource); items.Item2.PayloadFormatted().Should().Be("test__test_counter mtype=counter unit=none value=1i" + Environment.NewLine); }
public void Can_report_counters__when_multidimensional() { // Arrange var expected = "test__test_counter,host=server1,env=staging,mtype=counter,unit=none value=1i 1483232461000000000\n"; var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, _tags); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public void Can_report_counters() { // Arrange var expected = "test__test_counter,mtype=counter,unit=none value=1i 1483232461000000000\n"; var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public async Task Can_report_counters__when_multidimensional() { // Arrange var expected = "{\"series\":[{\"metric\":\"test.test_counter.counter.value\",\"points\":[[1483232461,1]],\"type\":\"count\",\"interval\":10,\"tags\":[\"host:server1\",\"env:staging\",\"unit:none\"]}]}"; var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, _tags); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert await AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), FlushInterval, expected); }
public async Task Can_report_counters() { // Arrange var expected = "test.test_counter.counter.value:1|c|#unit:none,timestamp:1483232461"; var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert await AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public async Task Can_report_counters__when_multidimensional() { // Arrange var expected = "env.staging.counter.test.test_counter.host.server1.Value 1 1483232461\n"; var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, _tags); // Act var valueSource = CreateValueSource("test", counters: counterValueSource); // Assert await AssertExpectedLineProtocolString(new MetricsDataValueSource(_timestamp, new[] { valueSource }), expected); }
public void can_report_counters__when_multidimensional() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, _tags); var payloadBuilder = new LineProtocolPayloadBuilder(); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted().Should().Be("test__test_counter,host=server1,env=staging value=1i\n"); }
public void can_report_counters() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty); var payloadBuilder = new LineProtocolPayloadBuilder(); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted().Should().Be("test__test_counter value=1i\n"); }
public void can_report_counters__when_multidimensional() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter" + MultidimensionalMetricNameSuffix, ConstantValue.Provider(counter.Value), Unit.None, _tags); var payloadBuilder = new GraphitePayloadBuilder(_settings.GraphiteSettings.MetricNameFormatter, _settings.DataKeys, Origin); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted().Should().Be("env.staging.counter.test.test_counter.host.server1.value 1 0\n"); }
public void can_report_counters() { var metricsMock = new Mock <IMetrics>(); var counter = new DefaultCounterMetric(); counter.Increment(1); var counterValueSource = new CounterValueSource( "test counter", ConstantValue.Provider(counter.Value), Unit.None, MetricTags.Empty); var payloadBuilder = new GraphitePayloadBuilder(_settings.GraphiteSettings.MetricNameFormatter, _settings.DataKeys, Origin); var reporter = CreateReporter(payloadBuilder); reporter.StartReportRun(metricsMock.Object); reporter.ReportMetric("test", counterValueSource); payloadBuilder.PayloadFormatted().Should().Be("counter.test.test_counter.value 1 0\n"); }
public void Can_be_incremented_on_multiple_threads() { const int threadCount = 16; const long iterations = 1000 * 100; var threads = new List <Thread>(); var tcs = new TaskCompletionSource <int>(); for (var i = 0; i < threadCount; i++) { threads.Add( new Thread( s => { tcs.Task.Wait(); for (long j = 0; j < iterations; j++) { _counter.Increment(); } })); } threads.ForEach(t => t.Start()); tcs.SetResult(0); threads.ForEach(t => t.Join()); _counter.Value.Count.Should().Be(threadCount * iterations); }