Repository: nifi Updated Branches: refs/heads/master 6fc30900b -> 86fb67d55
NIFI-3405 - Add uptime to JVM section in System Diagnostics renamed column for node connection date in cluster This closes #1492. Signed-off-by: Koji Kawamura <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/86fb67d5 Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/86fb67d5 Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/86fb67d5 Branch: refs/heads/master Commit: 86fb67d55cae49c085bed87287c70d365ce71766 Parents: 6fc3090 Author: Pierre Villard <[email protected]> Authored: Thu Feb 9 18:59:53 2017 +0100 Committer: Koji Kawamura <[email protected]> Committed: Wed Feb 15 16:53:53 2017 +0900 ---------------------------------------------------------------------- .../web/api/dto/SystemDiagnosticsSnapshotDTO.java | 13 +++++++++++++ .../nifi/diagnostics/SystemDiagnostics.java | 11 +++++++++++ .../diagnostics/SystemDiagnosticsFactory.java | 4 ++++ .../org/apache/nifi/web/api/dto/DtoFactory.java | 3 +++ .../summary/system-diagnostics-dialog.jsp | 18 ++++++++++++++++++ .../main/webapp/js/nf/cluster/nf-cluster-table.js | 14 ++++++++++++-- .../main/webapp/js/nf/summary/nf-summary-table.js | 3 +++ 7 files changed, 64 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/nifi/blob/86fb67d5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto/src/main/java/org/apache/nifi/web/api/dto/SystemDiagnosticsSnapshotDTO.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto/src/main/java/org/apache/nifi/web/api/dto/SystemDiagnosticsSnapshotDTO.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto/src/main/java/org/apache/nifi/web/api/dto/SystemDiagnosticsSnapshotDTO.java index 1cced18..eabbcdb 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto/src/main/java/org/apache/nifi/web/api/dto/SystemDiagnosticsSnapshotDTO.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto/src/main/java/org/apache/nifi/web/api/dto/SystemDiagnosticsSnapshotDTO.java @@ -58,6 +58,8 @@ public class SystemDiagnosticsSnapshotDTO implements Cloneable { private Integer totalThreads; private Integer daemonThreads; + private String uptime; + private StorageUsageDTO flowFileRepositoryStorageUsage; private Set<StorageUsageDTO> contentRepositoryStorageUsage; private Set<GarbageCollectionDTO> garbageCollection; @@ -315,6 +317,15 @@ public class SystemDiagnosticsSnapshotDTO implements Cloneable { this.versionInfo = versionInfo; } + @ApiModelProperty("The uptime of the Java virtual machine") + public String getUptime() { + return uptime; + } + + public void setUptime(String uptime) { + this.uptime = uptime; + } + @Override public SystemDiagnosticsSnapshotDTO clone() { final SystemDiagnosticsSnapshotDTO other = new SystemDiagnosticsSnapshotDTO(); @@ -358,6 +369,8 @@ public class SystemDiagnosticsSnapshotDTO implements Cloneable { other.setVersionInfo(getVersionInfo().clone()); + other.setUptime(getUptime()); + return other; } http://git-wip-us.apache.org/repos/asf/nifi/blob/86fb67d5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnostics.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnostics.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnostics.java index 7b50ebc..e599e1f 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnostics.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnostics.java @@ -39,6 +39,8 @@ public class SystemDiagnostics implements Cloneable { private int totalThreads; private int daemonThreads; + private long uptime; + private StorageUsage flowFileRepositoryStorageUsage; private Map<String, StorageUsage> contentRepositoryStorageUsage; private Map<String, GarbageCollection> garbageCollection; @@ -181,6 +183,14 @@ public class SystemDiagnostics implements Cloneable { this.creationTimestamp = creationTimestamp; } + public long getUptime() { + return uptime; + } + + public void setUptime(long uptime) { + this.uptime = uptime; + } + @Override public SystemDiagnostics clone() { final SystemDiagnostics clonedObj = new SystemDiagnostics(); @@ -212,6 +222,7 @@ public class SystemDiagnostics implements Cloneable { clonedObj.usedHeap = usedHeap; clonedObj.usedNonHeap = usedNonHeap; clonedObj.creationTimestamp = creationTimestamp; + clonedObj.uptime = uptime; return clonedObj; } http://git-wip-us.apache.org/repos/asf/nifi/blob/86fb67d5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnosticsFactory.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnosticsFactory.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnosticsFactory.java index 24685e9..86a772a 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnosticsFactory.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/diagnostics/SystemDiagnosticsFactory.java @@ -22,6 +22,7 @@ import java.lang.management.ManagementFactory; import java.lang.management.MemoryMXBean; import java.lang.management.MemoryUsage; import java.lang.management.OperatingSystemMXBean; +import java.lang.management.RuntimeMXBean; import java.lang.management.ThreadMXBean; import java.util.Date; import java.util.LinkedHashMap; @@ -52,6 +53,7 @@ public class SystemDiagnosticsFactory { final OperatingSystemMXBean os = ManagementFactory.getOperatingSystemMXBean(); final ThreadMXBean threads = ManagementFactory.getThreadMXBean(); final List<GarbageCollectorMXBean> garbageCollectors = ManagementFactory.getGarbageCollectorMXBeans(); + final RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean(); systemDiagnostics.setDaemonThreads(threads.getDaemonThreadCount()); systemDiagnostics.setTotalThreads(threads.getThreadCount()); @@ -64,6 +66,8 @@ public class SystemDiagnosticsFactory { systemDiagnostics.setUsedNonHeap(nonHeap.getUsed()); systemDiagnostics.setMaxNonHeap(nonHeap.getMax()); + systemDiagnostics.setUptime(runtime.getUptime()); + systemDiagnostics.setAvailableProcessors(os.getAvailableProcessors()); final double systemLoad = os.getSystemLoadAverage(); http://git-wip-us.apache.org/repos/asf/nifi/blob/86fb67d5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java index ec0392d..8049c12 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java @@ -2409,6 +2409,9 @@ public final class DtoFactory { final SystemDiagnosticsSnapshotDTO.VersionInfoDTO versionInfoDto = createVersionInfoDTO(); snapshot.setVersionInfo(versionInfoDto); + // uptime + snapshot.setUptime(FormatUtils.formatHoursMinutesSeconds(sysDiagnostics.getUptime(), TimeUnit.MILLISECONDS)); + return dto; } http://git-wip-us.apache.org/repos/asf/nifi/blob/86fb67d5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/system-diagnostics-dialog.jsp ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/system-diagnostics-dialog.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/system-diagnostics-dialog.jsp index 11fda46..15d5310 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/system-diagnostics-dialog.jsp +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/system-diagnostics-dialog.jsp @@ -127,6 +127,24 @@ </table> </div> </div> + <div class="setting"> + <div class="setting-header">Runtime</div> + <div id="jvm-runtime-container" class="setting-field"> + <table id="jvm-runtime-table"> + <tbody> + <tr> + <td class="setting-name">Uptime:</td> + </tr> + <tr> + <td><span id="uptime"></span></td> + </tr> + <tr> + <td></td> + </tr> + </tbody> + </table> + </div> + </div> </div> <div id="system-tab-content"class="configuration-tab"> <div class="settings-left"> http://git-wip-us.apache.org/repos/asf/nifi/blob/86fb67d5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js index b9b24db..6bb0d4a 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js @@ -181,6 +181,15 @@ resizable: true, cssClass: 'cell-right', headerCssClass: 'header-right' + }, + { + id: 'uptime', + field: 'uptime', + name: 'Uptime', + sortable: true, + resizable: true, + cssClass: 'cell-right', + headerCssClass: 'header-right' } ], tableIdColumn: 'id', @@ -496,7 +505,7 @@ { id: 'uptime', field: 'nodeStartTime', - name: 'Uptime', + name: 'Started At', formatter: valueFormatter, resizable: true, sortable: true, @@ -944,7 +953,8 @@ gcOldGen: garbageCollection[0].collectionCount + ' times (' + garbageCollection[0].collectionTime + ')', gcNewGen: garbageCollection[1].collectionCount + ' times (' + - garbageCollection[1].collectionTime + ')' + garbageCollection[1].collectionTime + ')', + uptime: snapshot.uptime }); }); jvmTab.rowCount = jvmTableRows.length; http://git-wip-us.apache.org/repos/asf/nifi/blob/86fb67d5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js index 4a5ae22..700e666 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js @@ -2299,6 +2299,9 @@ addGarbageCollection(garbageCollectionContainer, garbageCollection); }); } + + // uptime + $('#uptime').text(aggregateSnapshot.uptime); // available processors $('#available-processors').text(aggregateSnapshot.availableProcessors);
