You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by al...@apache.org on 2016/12/16 21:27:16 UTC
nifi-minifi git commit: MINIFI-170 - Changing FlowStatus report to be
JSON based
Repository: nifi-minifi
Updated Branches:
refs/heads/master 35dfa690c -> 4cf2cea3e
MINIFI-170 - Changing FlowStatus report to be JSON based
This closes #65.
Signed-off-by: Aldrin Piri <al...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/nifi-minifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-minifi/commit/4cf2cea3
Tree: http://git-wip-us.apache.org/repos/asf/nifi-minifi/tree/4cf2cea3
Diff: http://git-wip-us.apache.org/repos/asf/nifi-minifi/diff/4cf2cea3
Branch: refs/heads/master
Commit: 4cf2cea3e201b136fdf7fd83c453b4401d20cb99
Parents: 35dfa69
Author: Andrew Psaltis <ps...@gmail.com>
Authored: Tue Dec 13 12:15:40 2016 -0500
Committer: Aldrin Piri <al...@apache.org>
Committed: Fri Dec 16 16:23:41 2016 -0500
----------------------------------------------------------------------
minifi-commons/minifi-utils/pom.xml | 7 +++++-
.../minifi/commons/status/FlowStatusReport.java | 26 +++++++++++++++++++-
.../src/main/markdown/System_Admin_Guide.md | 3 +--
3 files changed, 32 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/4cf2cea3/minifi-commons/minifi-utils/pom.xml
----------------------------------------------------------------------
diff --git a/minifi-commons/minifi-utils/pom.xml b/minifi-commons/minifi-utils/pom.xml
index a266a3e..b846a7e 100644
--- a/minifi-commons/minifi-utils/pom.xml
+++ b/minifi-commons/minifi-utils/pom.xml
@@ -23,6 +23,11 @@
<artifactId>minifi-utils</artifactId>
<packaging>jar</packaging>
-
+ <dependencies>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </dependency>
+ </dependencies>
</project>
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/4cf2cea3/minifi-commons/minifi-utils/src/main/java/org/apache/nifi/minifi/commons/status/FlowStatusReport.java
----------------------------------------------------------------------
diff --git a/minifi-commons/minifi-utils/src/main/java/org/apache/nifi/minifi/commons/status/FlowStatusReport.java b/minifi-commons/minifi-utils/src/main/java/org/apache/nifi/minifi/commons/status/FlowStatusReport.java
index d2b6851..fa123fb 100644
--- a/minifi-commons/minifi-utils/src/main/java/org/apache/nifi/minifi/commons/status/FlowStatusReport.java
+++ b/minifi-commons/minifi-utils/src/main/java/org/apache/nifi/minifi/commons/status/FlowStatusReport.java
@@ -17,6 +17,8 @@
package org.apache.nifi.minifi.commons.status;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.nifi.minifi.commons.status.connection.ConnectionStatusBean;
import org.apache.nifi.minifi.commons.status.controllerservice.ControllerServiceStatus;
import org.apache.nifi.minifi.commons.status.instance.InstanceStatus;
@@ -25,6 +27,8 @@ import org.apache.nifi.minifi.commons.status.reportingTask.ReportingTaskStatus;
import org.apache.nifi.minifi.commons.status.rpg.RemoteProcessGroupStatusBean;
import org.apache.nifi.minifi.commons.status.system.SystemDiagnosticsStatus;
+import java.io.IOException;
+import java.io.StringWriter;
import java.util.List;
public class FlowStatusReport implements java.io.Serializable {
@@ -36,6 +40,7 @@ public class FlowStatusReport implements java.io.Serializable {
private SystemDiagnosticsStatus systemDiagnosticsStatus;
private List<ReportingTaskStatus> reportingTaskStatusList;
private List<String> errorsGeneratingReport;
+ private static final ObjectMapper objectMapper = new ObjectMapper();
public FlowStatusReport() {
}
@@ -138,7 +143,24 @@ public class FlowStatusReport implements java.io.Serializable {
@Override
public String toString() {
- return "FlowStatusReport{" +
+
+ StringWriter jsonString = new StringWriter();
+ try(JsonGenerator generator = objectMapper.getFactory().createGenerator(jsonString)){
+ generator.writeStartObject();
+ generator.writeObjectField("controllerServiceStatusList", controllerServiceStatusList);
+ generator.writeObjectField("processorStatusList", processorStatusList);
+ generator.writeObjectField("connectionStatusList", connectionStatusList);
+ generator.writeObjectField("remoteProcessGroupStatusList", remoteProcessGroupStatusList);
+ generator.writeObjectField("instanceStatus", instanceStatus);
+ generator.writeObjectField("systemDiagnosticsStatus", systemDiagnosticsStatus);
+ generator.writeObjectField("reportingTaskStatusList", reportingTaskStatusList);
+ generator.writeObjectField("errorsGeneratingReport", errorsGeneratingReport);
+ generator.writeEndObject();
+ generator.close();
+ } catch (IOException e) {
+ //this should not occur since we are using a StringWriter, however, in the event it does. Generate
+ //the old style report
+ return "FlowStatusReport{" +
"controllerServiceStatusList=" + controllerServiceStatusList +
", processorStatusList=" + processorStatusList +
", connectionStatusList=" + connectionStatusList +
@@ -148,5 +170,7 @@ public class FlowStatusReport implements java.io.Serializable {
", reportingTaskStatusList=" + reportingTaskStatusList +
", errorsGeneratingReport=" + errorsGeneratingReport +
'}';
+ }
+ return jsonString.toString();
}
}
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/4cf2cea3/minifi-docs/src/main/markdown/System_Admin_Guide.md
----------------------------------------------------------------------
diff --git a/minifi-docs/src/main/markdown/System_Admin_Guide.md b/minifi-docs/src/main/markdown/System_Admin_Guide.md
index a4e0f31..efc23b4 100644
--- a/minifi-docs/src/main/markdown/System_Admin_Guide.md
+++ b/minifi-docs/src/main/markdown/System_Admin_Guide.md
@@ -314,8 +314,7 @@ MiNiFi home: /Users/user/projects/nifi-minifi/minifi-assembly/target/minifi-0.0.
Bootstrap Config File: /Users/user/projects/nifi-minifi/minifi-assembly/target/minifi-0.0.1-SNAPSHOT-bin/minifi-0.0.1-SNAPSHOT/conf/bootstrap.conf
-FlowStatusReport{controllerServiceStatusList=null, processorStatusList=[{name='TailFile', processorHealth={runStatus='Running', hasBulletins=false, validationErrorList=[]}, processorStats=null,
-bulletinList=null}], connectionStatusList=null, remoteProcessGroupStatusList=null, instanceStatus=null, systemDiagnosticsStatus=null, reportingTaskStatusList=null, errorsGeneratingReport=[]}
+{"controllerServiceStatusList":null,"processorStatusList":[{"name":"Connection Diagnostics","processorHealth":{"runStatus":"Running","hasBulletins":false,"validationErrorList":[]},"processorStats":null,"bulletinList":null},{"name":"UpdateAttribute","processorHealth":{"runStatus":"Running","hasBulletins":false,"validationErrorList":[]},"processorStats":null,"bulletinList":null},{"name":"Processor Diagnostics","processorHealth":{"runStatus":"Running","hasBulletins":false,"validationErrorList":[]},"processorStats":null,"bulletinList":null},{"name":"System Diagnostics","processorHealth":{"runStatus":"Running","hasBulletins":false,"validationErrorList":[]},"processorStats":null,"bulletinList":null},{"name":"GenerateFlowFile","processorHealth":{"runStatus":"Running","hasBulletins":false,"validationErrorList":[]},"processorStats":null,"bulletinList":null}],"connectionStatusList":null,"remoteProcessGroupStatusList":null,"instanceStatus":null,"systemDiagnosticsStatus":null,"reportingTaskStat
usList":null,"errorsGeneratingReport":[]}
```
# Periodic Status Reporters