public void NodeMetrics_must_not_merge_2_NodeMetrics_if_master_is_more_recent() { var sample1 = new NodeMetrics(_node1, 1, ImmutableHashSet.Create <Metric>(Metric.Create("a", 10), Metric.Create("b", 20))); var sample2 = new NodeMetrics(_node1, 0, ImmutableHashSet.Create <Metric>(Metric.Create("a", 11), Metric.Create("c", 30))); var merged = sample1.Merge(sample2); //older and not the same merged.Timestamp.ShouldBe(sample1.Timestamp); merged.Metrics.ShouldBe(sample1.Metrics); }
public void NodeMetrics_must_merge_2_NodeMetrics_by_most_recent() { var sample1 = new NodeMetrics(_node1, 1, ImmutableHashSet.Create <Metric>(Metric.Create("a", 10), Metric.Create("b", 20))); var sample2 = new NodeMetrics(_node1, 2, ImmutableHashSet.Create <Metric>(Metric.Create("a", 11), Metric.Create("c", 30))); var merged = sample1.Merge(sample2); merged.Timestamp.ShouldBe(sample2.Timestamp); merged.Metric("a").Value.ShouldBe(11); merged.Metric("b").Value.ShouldBe(20); merged.Metric("c").Value.ShouldBe(30); }
public static Metric <T> WithoutValue <T>(this MetricDescriptor <T> descriptor) => Metric.Create(descriptor, EmptyValue <T>());
public static Metric <T> WithValue <T>(this MetricDescriptor <T> descriptor, T value) => Metric.Create(descriptor, value);
public void RegisterMetrics(ICollectorRegistry registry) { _metrics = _config.Metrics.Select(m => Metric.Create(registry, m)).ToArray(); }