Author: brandonli Date: Thu Sep 26 04:11:12 2013 New Revision: 1526368 URL: http://svn.apache.org/r1526368 Log: HDFS-5041. Add the time of last heartbeat to dead server Web UI. Contributed by Shinichi Yamashita
Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NamenodeJspHelper.java Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1526368&r1=1526367&r2=1526368&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Thu Sep 26 04:11:12 2013 @@ -120,6 +120,9 @@ Trunk (Unreleased) HDFS-4904. Remove JournalService. (Arpit Agarwal via cnauroth) + HDFS-5041. Add the time of last heartbeat to dead server Web UI (Shinichi + Yamashita via brandonli) + OPTIMIZATIONS BUG FIXES Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NamenodeJspHelper.java URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NamenodeJspHelper.java?rev=1526368&r1=1526367&r2=1526368&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NamenodeJspHelper.java (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NamenodeJspHelper.java Thu Sep 26 04:11:12 2013 @@ -30,6 +30,7 @@ import java.net.URLEncoder; import java.security.PrivilegedExceptionAction; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.Iterator; import java.util.List; import java.util.Map; @@ -785,9 +786,13 @@ class NamenodeJspHelper { */ generateNodeDataHeader(out, d, suffix, alive, nnHttpPort, nnaddr); + long currentTime = Time.now(); + long timestamp = d.getLastUpdate(); if (!alive) { - out.print("<td class=\"decommissioned\"> " + - d.isDecommissioned() + "\n"); + out.print("<td class=\"lastcontact\"> " + + new Date(timestamp) + + "<td class=\"decommissioned\"> " + + d.isDecommissioned() + "\n"); return; } @@ -800,9 +805,6 @@ class NamenodeJspHelper { String percentRemaining = fraction2String(d.getRemainingPercent()); String adminState = d.getAdminState().toString(); - - long timestamp = d.getLastUpdate(); - long currentTime = Time.now(); long bpUsed = d.getBlockPoolUsed(); String percentBpUsed = fraction2String(d.getBlockPoolUsedPercent()); @@ -953,6 +955,8 @@ class NamenodeJspHelper { + "<th " + nodeHeaderStr("node") + "> Node <th " + nodeHeaderStr("address") + "> Transferring<br>Address <th " + + nodeHeaderStr("lastcontact") + + "> Last <br>Contact <th " + nodeHeaderStr("decommissioned") + "> Decommissioned\n");