loadhistory.jsp
上传用户:quxuerui
上传日期:2018-01-08
资源大小:41811k
文件大小:2k
源码类别:

网格计算

开发平台:

Java

  1. <%@ page
  2.   contentType="text/html; charset=UTF-8"
  3.   import="java.io.*"
  4.   import="java.util.*"
  5.   import="org.apache.hadoop.mapred.*"
  6.   import="org.apache.hadoop.fs.*"
  7.   import="org.apache.hadoop.util.*"
  8.   import="javax.servlet.jsp.*"
  9.   import="java.text.SimpleDateFormat"  
  10.   import="org.apache.hadoop.mapred.JobHistory.*"
  11. %>
  12. <%
  13.     PathFilter jobLogFileFilter = new PathFilter() {
  14.       public boolean accept(Path path) {
  15.         return !(path.getName().endsWith(".xml"));
  16.       }
  17.     };
  18.     
  19.     FileSystem fs = (FileSystem) application.getAttribute("fileSys");
  20.     String jobId =  (String)request.getParameter("jobid");
  21.     JobHistory.JobInfo job = (JobHistory.JobInfo)
  22.                                request.getSession().getAttribute("job");
  23.     // if session attribute of JobInfo exists and is of different job's,
  24.     // then remove the attribute
  25.     // if the job has not yet finished, remove the attribute sothat it 
  26.     // gets refreshed.
  27.     boolean isJobComplete = false;
  28.     if (null != job) {
  29.       String jobStatus = job.get(Keys.JOB_STATUS);
  30.       isJobComplete = Values.SUCCESS.name() == jobStatus
  31.                       || Values.FAILED.name() == jobStatus
  32.                       || Values.KILLED.name() == jobStatus;
  33.     }
  34.     if (null != job && 
  35.        (!jobId.equals(job.get(Keys.JOBID)) 
  36.          || !isJobComplete)) {
  37.       // remove jobInfo from session, keep only one job in session at a time
  38.       request.getSession().removeAttribute("job"); 
  39.       job = null ; 
  40.     }
  41.     if (null == job) {
  42.       String jobLogFile = (String)request.getParameter("logFile");
  43.       job = new JobHistory.JobInfo(jobId); 
  44.       DefaultJobHistoryParser.parseJobTasks(jobLogFile, job, fs) ; 
  45.       request.getSession().setAttribute("job", job);
  46.       request.getSession().setAttribute("fs", fs);
  47.     }
  48. %>