You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by pv...@apache.org on 2018/09/25 10:24:31 UTC

nifi git commit: NIFI-5630: Ensure that we include counters in Status History when present

Repository: nifi
Updated Branches:
  refs/heads/master c4d3b5e94 -> 4b4c9e14c


NIFI-5630: Ensure that we include counters in Status History when present

Signed-off-by: Pierre Villard <pi...@gmail.com>

This closes #3026.


Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/4b4c9e14
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/4b4c9e14
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/4b4c9e14

Branch: refs/heads/master
Commit: 4b4c9e14cb06928fb72cc883fd7c8551e6e8f01c
Parents: c4d3b5e
Author: Mark Payne <ma...@hotmail.com>
Authored: Mon Sep 24 15:12:35 2018 -0400
Committer: Pierre Villard <pi...@gmail.com>
Committed: Tue Sep 25 12:24:17 2018 +0200

----------------------------------------------------------------------
 .../status/history/StandardStatusSnapshot.java     | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi/blob/4b4c9e14/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardStatusSnapshot.java
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardStatusSnapshot.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardStatusSnapshot.java
index 4662753..fb9112b 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardStatusSnapshot.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardStatusSnapshot.java
@@ -30,6 +30,7 @@ public class StandardStatusSnapshot implements StatusSnapshot {
 
     private Map<MetricDescriptor<?>, Long> counterValues = null;
     private Date timestamp = new Date();
+    private Set<MetricDescriptor<?>> metricDescriptorsWithCounters = null;
 
 
     public StandardStatusSnapshot(final Set<MetricDescriptor<?>> metricDescriptors) {
@@ -49,7 +50,17 @@ public class StandardStatusSnapshot implements StatusSnapshot {
 
     @Override
     public Set<MetricDescriptor<?>> getMetricDescriptors() {
-        return metricDescriptors;
+        if (counterValues == null || counterValues.isEmpty()) {
+            return metricDescriptors;
+        } else {
+            if (metricDescriptorsWithCounters == null) {
+                metricDescriptorsWithCounters = new LinkedHashSet<>();
+                metricDescriptorsWithCounters.addAll(metricDescriptors);
+                metricDescriptorsWithCounters.addAll(counterValues.keySet());
+            }
+
+            return metricDescriptorsWithCounters;
+        }
     }
 
     @Override
@@ -75,7 +86,7 @@ public class StandardStatusSnapshot implements StatusSnapshot {
     }
 
     public StandardStatusSnapshot withoutCounters() {
-        if (counterValues == null) {
+        if (counterValues == null || counterValues.isEmpty()) {
             return this;
         }
 
@@ -90,7 +101,7 @@ public class StandardStatusSnapshot implements StatusSnapshot {
             @Override
             public StatusSnapshot reduce(final List<StatusSnapshot> values) {
                 Date reducedTimestamp = null;
-                final Set<MetricDescriptor<?>> allDescriptors = new LinkedHashSet<>(metricDescriptors);
+                final Set<MetricDescriptor<?>> allDescriptors = new LinkedHashSet<>(getMetricDescriptors());
 
                 for (final StatusSnapshot statusSnapshot : values) {
                     if (reducedTimestamp == null) {