webapps.admin.querydetail.jsp Maven / Gradle / Ivy
<%
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="org.apache.tajo.util.JSPUtil" %>
<%@ page import="org.apache.tajo.webapp.StaticHttpServer" %>
<%@ page import="org.apache.tajo.master.TajoMaster" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.List" %>
<%@ page import="org.apache.tajo.util.history.QueryHistory" %>
<%@ page import="org.apache.tajo.util.history.StageHistory" %>
<%@ page import="org.apache.tajo.util.history.HistoryReader" %>
<%
TajoMaster master = (TajoMaster) StaticHttpServer.getInstance().getAttribute("tajo.info.server.object");
HistoryReader reader = master.getContext().getHistoryReader();
String queryId = request.getParameter("queryId");
String startTime = request.getParameter("startTime");
QueryHistory queryHistory = reader.getQueryHistory(queryId, Long.parseLong(startTime));
List stageHistories =
queryHistory != null ? JSPUtil.sortStageHistories(queryHistory.getStageHistories()) : null;
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
%>
Query Detail Info
<%@ include file="header.jsp"%>
Tajo Master: <%=master.getMasterName()%> <%=JSPUtil.getMasterActiveLabel(master.getContext())%>
<%=queryId%>
<%
if (queryHistory == null) {
%>
No Query history data.
<%
} else {
if (stageHistories == null) {
%>
No Stage history data.
<%
} else {
%>
ID State Started Finished Running time Progress Succeeded/Total Failed/Killed
<%
for(StageHistory eachStage: stageHistories) {
String detailLink = "querytasks.jsp?queryId=" + queryId + "&ebid=" + eachStage.getExecutionBlockId() + "&startTime=" + startTime;
%>
<%=eachStage.getExecutionBlockId()%>
<%=eachStage.getState()%>
<%=df.format(eachStage.getStartTime())%>
<%=eachStage.getFinishTime() == 0 ? "-" : df.format(eachStage.getFinishTime())%>
<%=JSPUtil.getElapsedTime(eachStage.getStartTime(), eachStage.getFinishTime())%>
<%=JSPUtil.percentFormat(eachStage.getProgress())%>%
<%=eachStage.getSucceededObjectCount()%> / <%=eachStage.getTotalScheduledObjectsCount()%>
<%=eachStage.getFailedObjectCount()%> / <%=eachStage.getKilledObjectCount()%>
<%
} //end of for
%>
<%
} //end of else [if (stageHistories == null)]
%>
Applied Session Variables
<%
for(String[] sessionVariable: queryHistory.getSessionVariables()) {
%>
<%=sessionVariable[0]%> <%=sessionVariable[1]%>
<%
}
%>
Logical Plan
<%=queryHistory.getLogicalPlan()%>
Distributed Query Plan
<%=queryHistory.getDistributedPlan()%>
<%
} //end of else [if (query == null)]
%>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy