예제 #1
0
        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);
        }
예제 #2
0
        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);
예제 #5
0
 public void RegisterMetrics(ICollectorRegistry registry)
 {
     _metrics = _config.Metrics.Select(m => Metric.Create(registry, m)).ToArray();
 }