<%@ page contentType="text/html; charset=UTF-8" import="javax.servlet.*" import="javax.servlet.http.*" import="java.io.*" import="java.util.*" import="org.apache.hadoop.mapred.*" import="java.lang.Integer" %> <% String jobid = request.getParameter("jobid"); String type = request.getParameter("type"); String pagenum = request.getParameter("pagenum"); int pnum = Integer.parseInt(pagenum); int next_page = pnum+1; int numperpage = 2000; JobTracker tracker = JobTracker.getTracker(); JobInProgress job = (JobInProgress) tracker.getJob(jobid); JobProfile profile = (job != null) ? (job.getProfile()) : null; JobStatus status = (job != null) ? (job.getStatus()) : null; TaskReport[] reports = null; int start_index = (pnum - 1) * numperpage; int end_index = start_index + numperpage; int report_len = 0; if ("map".equals(type)){ reports = (job != null) ? tracker.getMapTaskReports(jobid) : null; } else{ reports = (job != null) ? tracker.getReduceTaskReports(jobid) : null; } %> Hadoop MapReduce Job Details <% if (job == null) { %> No job found
<% } else { %>

Job '<%=jobid%>'

Job File: <%=profile.getJobFile()%>
The job started at: <%= new Date(job.getStartTime())%>
<% if (status.getRunState() == JobStatus.RUNNING) { out.print("The job is still running.
\n"); } else if (status.getRunState() == JobStatus.SUCCEEDED) { out.print("The job completed at: " + new Date(job.getFinishTime()) + "
\n"); } else if (status.getRunState() == JobStatus.FAILED) { out.print("The job failed at: " + new Date(job.getFinishTime()) + "
\n"); } report_len = reports.length; if (report_len <= start_index) { out.print("No such tasks"); }else{ out.print("
"); out.print("

Tasks

"); out.print("
"); out.print(""); out.print(""); if (end_index > report_len){ end_index = report_len; } for (int i = start_index ; i < end_index; i++) { TaskReport report = reports[i]; out.print(""); out.print(""); out.print(""); String[] diagnostics = report.getDiagnostics(); for (int j = 0; j < diagnostics.length ; j++) { out.print(""); } out.print("\n"); } out.print("
TaskCompleteStatusErrors
" + report.getTaskId() + "" + report.getProgress() + "" + report.getState() + "
" + diagnostics[j] + "
"); out.print("
"); } %> <% if (end_index < report_len) { out.print("
" + "" + "Next" + "
"); } if (start_index != 0) { out.print("
" + "" + "Prev" + "
"); } } %>
Go back to JobTracker
Hadoop, 2006.