[
https://issues.apache.org/jira/browse/NIFI-619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15376022#comment-15376022
]
ASF GitHub Bot commented on NIFI-619:
-------------------------------------
Github user ijokarumawak commented on a diff in the pull request:
https://github.com/apache/nifi/pull/575#discussion_r70728563
--- Diff:
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/MonitorActivity.java
---
@@ -234,4 +361,10 @@ public void process(final OutputStream out) throws
IOException {
}
}
}
+
+ @OnPrimaryNodeStateChange
+ public void onPrimaryNodeChange(final PrimaryNodeState newState) {
+ isPrimaryNode = (newState ==
PrimaryNodeState.ELECTED_PRIMARY_NODE);
--- End diff --
This is a great catch, thank you!
@JPercivall in different PR I'm working on, #563 also needs similar
functionality to know whether it's running on a standalone or clustered NiFi,
and if latter whether it's a primary node.
I'm going to try adding a new `@OnAddedToCluster` lifecycle annotation
taking one argument `isPrimaryNode`. Using it together with
`@OnPrimaryNodeStateChange` Processors, Reporting tasks, and Controller
services will be able to control its behavior well in a clustered environment.
How do you think?
> update MonitorActivity processor to be cluster friendly
> -------------------------------------------------------
>
> Key: NIFI-619
> URL: https://issues.apache.org/jira/browse/NIFI-619
> Project: Apache NiFi
> Issue Type: Improvement
> Reporter: Brandon DeVries
> Assignee: Koji Kawamura
> Priority: Minor
> Fix For: 1.0.0
>
>
> This processor should be able to be used to monitor activity across the
> cluster. In its current state, alerting is based on activity of a single
> node, not the entire cluster.
> For example, in a 2 node cluster, if system A is getting data from a given
> flow and system B is not, system B will alert for lack of activity even
> though the flow is functioning "normally".
> The ideal behavior would be fore an alert to be generated only if both
> systems did not see data in the specified time.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)