Skip to content

Commit 7346a65

Browse files
committed
HADOOP-1894. Add percentage graphs and mapred task completion graphs
to Web User Interface. Contributed by Enis Soztutar. git-svn-id: https://svn.apache.org/repos/asf/lucene/hadoop/trunk@579928 13f79535-47bb-0310-9956-ffa450edef68
1 parent 3f7a2b3 commit 7346a65

File tree

9 files changed

+366
-48
lines changed

9 files changed

+366
-48
lines changed

CHANGES.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@ Trunk (unreleased changes)
6262

6363
HADOOP-1809. Add a link in web site to #hadoop IRC channel. (enis)
6464

65+
HADOOP-1894. Add percentage graphs and mapred task completion graphs
66+
to Web User Interface. Users not using Firefox may install a plugin to
67+
their browsers to see svg graphics. (enis)
68+
6569
OPTIMIZATIONS
6670

6771
HADOOP-1910. Reduce the number of RPCs that DistributedFileSystem.create()

src/java/org/apache/hadoop/dfs/JspHelper.java

Lines changed: 38 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,21 @@
1818

1919
package org.apache.hadoop.dfs;
2020

21-
import javax.servlet.*;
22-
import javax.servlet.jsp.*;
23-
import javax.servlet.http.*;
24-
import java.io.*;
25-
import java.util.*;
26-
import java.net.*;
27-
import org.apache.hadoop.dfs.*;
21+
import java.io.IOException;
22+
import java.io.UnsupportedEncodingException;
23+
import java.net.InetSocketAddress;
24+
import java.net.Socket;
25+
import java.util.ArrayList;
26+
import java.util.Collections;
27+
import java.util.Comparator;
28+
import java.util.Random;
29+
import java.util.TreeSet;
30+
31+
import javax.servlet.http.HttpServletRequest;
32+
import javax.servlet.jsp.JspWriter;
33+
34+
import org.apache.hadoop.conf.Configuration;
2835
import org.apache.hadoop.fs.Path;
29-
import org.apache.hadoop.io.*;
30-
import org.apache.hadoop.conf.*;
3136

3237
public class JspHelper {
3338
static FSNamesystem fsn = null;
@@ -276,4 +281,28 @@ public static void createTitle(JspWriter out,
276281
out.print("<title>HDFS:" + file + "</title>");
277282
}
278283

284+
public static String percentageGraph(int perc, int width)
285+
throws IOException {
286+
287+
assert perc >= 0; assert perc <= 100;
288+
289+
StringBuilder builder = new StringBuilder();
290+
291+
builder.append("<table border=\"1px\" width=\""); builder.append(width);
292+
builder.append("px\"><tr>");
293+
if(perc > 0) {
294+
builder.append("<td cellspacing=\"0\" class=\"perc_filled\" width=\"");
295+
builder.append(perc); builder.append("%\"></td>");
296+
}if(perc < 100) {
297+
builder.append("<td cellspacing=\"0\" class=\"perc_nonfilled\" width=\"");
298+
builder.append(100 - perc); builder.append("%\"></td>");
299+
}
300+
builder.append("</tr></table>");
301+
return builder.toString();
302+
}
303+
304+
public static String percentageGraph(float perc, int width) throws IOException {
305+
return percentageGraph((int)perc, width);
306+
}
307+
279308
}

0 commit comments

Comments
 (0)