blob: ef099e6ea0acdeed861352bb8dfb03d371d918e0 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--
| Generated by Apache Maven Doxia at 2021-06-15
| Rendered using Apache Maven Stylus Skin 1.5
-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Apache Hadoop 3.3.1 &#x2013; MapReduce Application Master REST APIs.</title>
<style type="text/css" media="all">
@import url("./css/maven-base.css");
@import url("./css/maven-theme.css");
@import url("./css/site.css");
</style>
<link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
<meta name="Date-Revision-yyyymmdd" content="20210615" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body class="composite">
<div id="banner">
<a href="http://hadoop.apache.org/" id="bannerLeft">
<img src="http://hadoop.apache.org/images/hadoop-logo.jpg" alt="" />
</a>
<a href="http://www.apache.org/" id="bannerRight">
<img src="http://www.apache.org/images/asf_logo_wide.png" alt="" />
</a>
<div class="clear">
<hr/>
</div>
</div>
<div id="breadcrumbs">
<div class="xleft">
<a href="http://www.apache.org/" class="externalLink">Apache</a>
&gt;
<a href="http://hadoop.apache.org/" class="externalLink">Hadoop</a>
&gt;
<a href="../index.html">Apache Hadoop MapReduce Client</a>
&gt;
<a href="index.html">Apache Hadoop 3.3.1</a>
&gt;
MapReduce Application Master REST APIs.
</div>
<div class="xright"> <a href="http://wiki.apache.org/hadoop" class="externalLink">Wiki</a>
|
<a href="https://gitbox.apache.org/repos/asf/hadoop.git" class="externalLink">git</a>
|
<a href="http://hadoop.apache.org/" class="externalLink">Apache Hadoop</a>
&nbsp;| Last Published: 2021-06-15
&nbsp;| Version: 3.3.1
</div>
<div class="clear">
<hr/>
</div>
</div>
<div id="leftColumn">
<div id="navcolumn">
<h5>General</h5>
<ul>
<li class="none">
<a href="../../index.html">Overview</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/SingleCluster.html">Single Node Setup</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/ClusterSetup.html">Cluster Setup</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/CommandsManual.html">Commands Reference</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/FileSystemShell.html">FileSystem Shell</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/Compatibility.html">Compatibility Specification</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/DownstreamDev.html">Downstream Developer's Guide</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/AdminCompatibilityGuide.html">Admin Compatibility Guide</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/InterfaceClassification.html">Interface Classification</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/filesystem/index.html">FileSystem Specification</a>
</li>
</ul>
<h5>Common</h5>
<ul>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/CLIMiniCluster.html">CLI Mini Cluster</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/FairCallQueue.html">Fair Call Queue</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/NativeLibraries.html">Native Libraries</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/Superusers.html">Proxy User</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/RackAwareness.html">Rack Awareness</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/SecureMode.html">Secure Mode</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/ServiceLevelAuth.html">Service Level Authorization</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/HttpAuthentication.html">HTTP Authentication</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/CredentialProviderAPI.html">Credential Provider API</a>
</li>
<li class="none">
<a href="../../hadoop-kms/index.html">Hadoop KMS</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/Tracing.html">Tracing</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/UnixShellGuide.html">Unix Shell Guide</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/registry/index.html">Registry</a>
</li>
</ul>
<h5>HDFS</h5>
<ul>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsDesign.html">Architecture</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsUserGuide.html">User Guide</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HDFSCommands.html">Commands Reference</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html">NameNode HA With QJM</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithNFS.html">NameNode HA With NFS</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/ObserverNameNode.html">Observer NameNode</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/Federation.html">Federation</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/ViewFs.html">ViewFs</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/ViewFsOverloadScheme.html">ViewFsOverloadScheme</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsSnapshots.html">Snapshots</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsEditsViewer.html">Edits Viewer</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsImageViewer.html">Image Viewer</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html">Permissions and HDFS</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsQuotaAdminGuide.html">Quotas and HDFS</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/LibHdfs.html">libhdfs (C API)</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/WebHDFS.html">WebHDFS (REST API)</a>
</li>
<li class="none">
<a href="../../hadoop-hdfs-httpfs/index.html">HttpFS</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/ShortCircuitLocalReads.html">Short Circuit Local Reads</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/CentralizedCacheManagement.html">Centralized Cache Management</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsNfsGateway.html">NFS Gateway</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsRollingUpgrade.html">Rolling Upgrade</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/ExtendedAttributes.html">Extended Attributes</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/TransparentEncryption.html">Transparent Encryption</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsMultihoming.html">Multihoming</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html">Storage Policies</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/MemoryStorage.html">Memory Storage Support</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/SLGUserGuide.html">Synthetic Load Generator</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HDFSErasureCoding.html">Erasure Coding</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HDFSDiskbalancer.html">Disk Balancer</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsUpgradeDomain.html">Upgrade Domain</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsDataNodeAdminGuide.html">DataNode Admin</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs-rbf/HDFSRouterFederation.html">Router Federation</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/HdfsProvidedStorage.html">Provided Storage</a>
</li>
</ul>
<h5>MapReduce</h5>
<ul>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html">Tutorial</a>
</li>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapredCommands.html">Commands Reference</a>
</li>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduce_Compatibility_Hadoop1_Hadoop2.html">Compatibility with 1.x</a>
</li>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/EncryptedShuffle.html">Encrypted Shuffle</a>
</li>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/PluggableShuffleAndPluggableSort.html">Pluggable Shuffle/Sort</a>
</li>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/DistributedCacheDeploy.html">Distributed Cache Deploy</a>
</li>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/SharedCacheSupport.html">Support for YARN Shared Cache</a>
</li>
</ul>
<h5>MapReduce REST APIs</h5>
<ul>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapredAppMasterRest.html">MR Application Master</a>
</li>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-hs/HistoryServerRest.html">MR History Server</a>
</li>
</ul>
<h5>YARN</h5>
<ul>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/YARN.html">Architecture</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/YarnCommands.html">Commands Reference</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/CapacityScheduler.html">Capacity Scheduler</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/FairScheduler.html">Fair Scheduler</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/ResourceManagerRestart.html">ResourceManager Restart</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/ResourceManagerHA.html">ResourceManager HA</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/ResourceModel.html">Resource Model</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/NodeLabel.html">Node Labels</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/NodeAttributes.html">Node Attributes</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/WebApplicationProxy.html">Web Application Proxy</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/TimelineServer.html">Timeline Server</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/TimelineServiceV2.html">Timeline Service V.2</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/WritingYarnApplications.html">Writing YARN Applications</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/YarnApplicationSecurity.html">YARN Application Security</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/NodeManager.html">NodeManager</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/DockerContainers.html">Running Applications in Docker Containers</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/RuncContainers.html">Running Applications in runC Containers</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/NodeManagerCgroups.html">Using CGroups</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/SecureContainer.html">Secure Containers</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/ReservationSystem.html">Reservation System</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/GracefulDecommission.html">Graceful Decommission</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/OpportunisticContainers.html">Opportunistic Containers</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/Federation.html">YARN Federation</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/SharedCache.html">Shared Cache</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/UsingGpus.html">Using GPU</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/UsingFPGA.html">Using FPGA</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/PlacementConstraints.html">Placement Constraints</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/YarnUI2.html">YARN UI2</a>
</li>
</ul>
<h5>YARN REST APIs</h5>
<ul>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/WebServicesIntro.html">Introduction</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/ResourceManagerRest.html">Resource Manager</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/NodeManagerRest.html">Node Manager</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/TimelineServer.html#Timeline_Server_REST_API_v1">Timeline Server</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/TimelineServiceV2.html#Timeline_Service_v.2_REST_API">Timeline Service V.2</a>
</li>
</ul>
<h5>YARN Service</h5>
<ul>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/Overview.html">Overview</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/QuickStart.html">QuickStart</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/Concepts.html">Concepts</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/YarnServiceAPI.html">Yarn Service API</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/ServiceDiscovery.html">Service Discovery</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/SystemServices.html">System Services</a>
</li>
</ul>
<h5>Hadoop Compatible File Systems</h5>
<ul>
<li class="none">
<a href="../../hadoop-aliyun/tools/hadoop-aliyun/index.html">Aliyun OSS</a>
</li>
<li class="none">
<a href="../../hadoop-aws/tools/hadoop-aws/index.html">Amazon S3</a>
</li>
<li class="none">
<a href="../../hadoop-azure/index.html">Azure Blob Storage</a>
</li>
<li class="none">
<a href="../../hadoop-azure-datalake/index.html">Azure Data Lake Storage</a>
</li>
<li class="none">
<a href="../../hadoop-openstack/index.html">OpenStack Swift</a>
</li>
<li class="none">
<a href="../../hadoop-cos/cloud-storage/index.html">Tencent COS</a>
</li>
</ul>
<h5>Auth</h5>
<ul>
<li class="none">
<a href="../../hadoop-auth/index.html">Overview</a>
</li>
<li class="none">
<a href="../../hadoop-auth/Examples.html">Examples</a>
</li>
<li class="none">
<a href="../../hadoop-auth/Configuration.html">Configuration</a>
</li>
<li class="none">
<a href="../../hadoop-auth/BuildingIt.html">Building</a>
</li>
</ul>
<h5>Tools</h5>
<ul>
<li class="none">
<a href="../../hadoop-streaming/HadoopStreaming.html">Hadoop Streaming</a>
</li>
<li class="none">
<a href="../../hadoop-archives/HadoopArchives.html">Hadoop Archives</a>
</li>
<li class="none">
<a href="../../hadoop-archive-logs/HadoopArchiveLogs.html">Hadoop Archive Logs</a>
</li>
<li class="none">
<a href="../../hadoop-distcp/DistCp.html">DistCp</a>
</li>
<li class="none">
<a href="../../hadoop-gridmix/GridMix.html">GridMix</a>
</li>
<li class="none">
<a href="../../hadoop-rumen/Rumen.html">Rumen</a>
</li>
<li class="none">
<a href="../../hadoop-resourceestimator/ResourceEstimator.html">Resource Estimator Service</a>
</li>
<li class="none">
<a href="../../hadoop-sls/SchedulerLoadSimulator.html">Scheduler Load Simulator</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/Benchmarking.html">Hadoop Benchmarking</a>
</li>
<li class="none">
<a href="../../hadoop-dynamometer/Dynamometer.html">Dynamometer</a>
</li>
</ul>
<h5>Reference</h5>
<ul>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/release/">Changelog and Release Notes</a>
</li>
<li class="none">
<a href="../../api/index.html">Java API docs</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/UnixShellAPI.html">Unix Shell API</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/Metrics.html">Metrics</a>
</li>
</ul>
<h5>Configuration</h5>
<ul>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/core-default.xml">core-default.xml</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs/hdfs-default.xml">hdfs-default.xml</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-hdfs-rbf/hdfs-rbf-default.xml">hdfs-rbf-default.xml</a>
</li>
<li class="none">
<a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml">mapred-default.xml</a>
</li>
<li class="none">
<a href="../../hadoop-yarn/hadoop-yarn-common/yarn-default.xml">yarn-default.xml</a>
</li>
<li class="none">
<a href="../../hadoop-kms/kms-default.html">kms-default.xml</a>
</li>
<li class="none">
<a href="../../hadoop-hdfs-httpfs/httpfs-default.html">httpfs-default.xml</a>
</li>
<li class="none">
<a href="../../hadoop-project-dist/hadoop-common/DeprecatedProperties.html">Deprecated Properties</a>
</li>
</ul>
<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
<img alt="Built by Maven" src="./images/logos/maven-feather.png"/>
</a>
</div>
</div>
<div id="bodyColumn">
<div id="contentBox">
<!---
Licensed 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. See accompanying LICENSE file.
-->
<h1>MapReduce Application Master REST API&#x2019;s.</h1>
<ul>
<li><a href="#Overview">Overview</a></li>
<li><a href="#Mapreduce_Application_Master_Info_API">Mapreduce Application Master Info API</a></li>
<li><a href="#Jobs_API">Jobs API</a></li>
<li><a href="#Job_API">Job API</a></li>
<li><a href="#Job_Attempts_API">Job Attempts API</a></li>
<li><a href="#Job_Counters_API">Job Counters API</a></li>
<li><a href="#Job_Conf_API">Job Conf API</a></li>
<li><a href="#Tasks_API">Tasks API</a></li>
<li><a href="#Task_API">Task API</a></li>
<li><a href="#Task_Counters_API">Task Counters API</a></li>
<li><a href="#Task_Attempts_API">Task Attempts API</a></li>
<li><a href="#Task_Attempt_API">Task Attempt API</a></li>
<li><a href="#Task_Attempt_State_API">Task Attempt State API</a></li>
<li><a href="#Task_Attempt_Counters_API">Task Attempt Counters API</a></li></ul>
<div class="section">
<h2><a name="Overview"></a>Overview</h2>
<p>The MapReduce Application Master REST API&#x2019;s allow the user to get status on the running MapReduce application master. Currently this is the equivalent to a running MapReduce job. The information includes the jobs the app master is running and all the job particulars like tasks, counters, configuration, attempts, etc. The application master should be accessed via the proxy. This proxy is configurable to run either on the resource manager or on a separate host. The proxy URL usually looks like: <tt>http://proxy-http-address:port/proxy/appid</tt>.</p></div>
<div class="section">
<h2><a name="Mapreduce_Application_Master_Info_API"></a>Mapreduce Application Master Info API</h2>
<p>The MapReduce application master information resource provides overall information about that mapreduce application master. This includes application id, time it was started, user, name, etc.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<p>Both of the following URI&#x2019;s give you the MapReduce application master information, from an application id identified by the appid value.</p>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce</a>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/info">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/info</a></li>
</ul>
</li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_info_object"></a>Elements of the <i>info</i> object</h3>
<p>When you make a request for the mapreduce application master information, the information will be returned as an info object.</p>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> appId </td>
<td align="left"> long </td>
<td align="left"> The application id </td></tr>
<tr class="a">
<td align="left"> startedOn </td>
<td align="left"> long </td>
<td align="left"> The time the application started (in ms since epoch) </td></tr>
<tr class="b">
<td align="left"> name </td>
<td align="left"> string </td>
<td align="left"> The name of the application </td></tr>
<tr class="a">
<td align="left"> user </td>
<td align="left"> string </td>
<td align="left"> The user name of the user who started the application </td></tr>
<tr class="b">
<td align="left"> elapsedTime </td>
<td align="left"> long </td>
<td align="left"> The time since the application was started (in ms) </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0003/ws/v1/mapreduce/info
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;info&quot; : {
&quot;appId&quot; : &quot;application_1326232085508_0003&quot;,
&quot;startedOn&quot; : 1326238244047,
&quot;user&quot; : &quot;user1&quot;,
&quot;name&quot; : &quot;Sleep job&quot;,
&quot;elapsedTime&quot; : 32374
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> Accept: application/xml
GET http://proxy-http-address:port/proxy/application_1326232085508_0003/ws/v1/mapreduce/info
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 223
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;info&gt;
&lt;appId&gt;application_1326232085508_0003&lt;/appId&gt;
&lt;name&gt;Sleep job&lt;/name&gt;
&lt;user&gt;user1&lt;/user&gt;
&lt;startedOn&gt;1326238244047&lt;/startedOn&gt;
&lt;elapsedTime&gt;32407&lt;/elapsedTime&gt;
&lt;/info&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Jobs_API"></a>Jobs API</h2>
<p>The jobs resource provides a list of the jobs running on this application master. See also <a href="#Job_API">Job API</a> for syntax of the job object.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_jobs_object"></a>Elements of the <i>jobs</i> object</h3>
<p>When you make a request for the list of jobs, the information will be returned as a collection of job objects. See also <a href="#Job_API">Job API</a> for syntax of the job object.</p>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> job </td>
<td align="left"> array of job objects(JSON)/Zero or more job objects(XML) </td>
<td align="left"> The collection of job objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;jobs&quot; : {
&quot;job&quot; : [
{
&quot;runningReduceAttempts&quot; : 1,
&quot;reduceProgress&quot; : 100,
&quot;failedReduceAttempts&quot; : 0,
&quot;newMapAttempts&quot; : 0,
&quot;mapsRunning&quot; : 0,
&quot;state&quot; : &quot;RUNNING&quot;,
&quot;successfulReduceAttempts&quot; : 0,
&quot;reducesRunning&quot; : 1,
&quot;acls&quot; : [
{
&quot;value&quot; : &quot; &quot;,
&quot;name&quot; : &quot;mapreduce.job.acl-modify-job&quot;
},
{
&quot;value&quot; : &quot; &quot;,
&quot;name&quot; : &quot;mapreduce.job.acl-view-job&quot;
}
],
&quot;reducesPending&quot; : 0,
&quot;user&quot; : &quot;user1&quot;,
&quot;reducesTotal&quot; : 1,
&quot;mapsCompleted&quot; : 1,
&quot;startTime&quot; : 1326238769379,
&quot;id&quot; : &quot;job_1326232085508_4_4&quot;,
&quot;successfulMapAttempts&quot; : 1,
&quot;runningMapAttempts&quot; : 0,
&quot;newReduceAttempts&quot; : 0,
&quot;name&quot; : &quot;Sleep job&quot;,
&quot;mapsPending&quot; : 0,
&quot;elapsedTime&quot; : 59377,
&quot;reducesCompleted&quot; : 0,
&quot;mapProgress&quot; : 100,
&quot;diagnostics&quot; : &quot;&quot;,
&quot;failedMapAttempts&quot; : 0,
&quot;killedReduceAttempts&quot; : 0,
&quot;mapsTotal&quot; : 1,
&quot;uberized&quot; : false,
&quot;killedMapAttempts&quot; : 0,
&quot;finishTime&quot; : 0
}
]
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 1214
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobs&gt;
&lt;job&gt;
&lt;startTime&gt;1326238769379&lt;/startTime&gt;
&lt;finishTime&gt;0&lt;/finishTime&gt;
&lt;elapsedTime&gt;59416&lt;/elapsedTime&gt;
&lt;id&gt;job_1326232085508_4_4&lt;/id&gt;
&lt;name&gt;Sleep job&lt;/name&gt;
&lt;user&gt;user1&lt;/user&gt;
&lt;state&gt;RUNNING&lt;/state&gt;
&lt;mapsTotal&gt;1&lt;/mapsTotal&gt;
&lt;mapsCompleted&gt;1&lt;/mapsCompleted&gt;
&lt;reducesTotal&gt;1&lt;/reducesTotal&gt;
&lt;reducesCompleted&gt;0&lt;/reducesCompleted&gt;
&lt;mapProgress&gt;100.0&lt;/mapProgress&gt;
&lt;reduceProgress&gt;100.0&lt;/reduceProgress&gt;
&lt;mapsPending&gt;0&lt;/mapsPending&gt;
&lt;mapsRunning&gt;0&lt;/mapsRunning&gt;
&lt;reducesPending&gt;0&lt;/reducesPending&gt;
&lt;reducesRunning&gt;1&lt;/reducesRunning&gt;
&lt;uberized&gt;false&lt;/uberized&gt;
&lt;diagnostics/&gt;
&lt;newReduceAttempts&gt;0&lt;/newReduceAttempts&gt;
&lt;runningReduceAttempts&gt;1&lt;/runningReduceAttempts&gt;
&lt;failedReduceAttempts&gt;0&lt;/failedReduceAttempts&gt;
&lt;killedReduceAttempts&gt;0&lt;/killedReduceAttempts&gt;
&lt;successfulReduceAttempts&gt;0&lt;/successfulReduceAttempts&gt;
&lt;newMapAttempts&gt;0&lt;/newMapAttempts&gt;
&lt;runningMapAttempts&gt;0&lt;/runningMapAttempts&gt;
&lt;failedMapAttempts&gt;0&lt;/failedMapAttempts&gt;
&lt;killedMapAttempts&gt;0&lt;/killedMapAttempts&gt;
&lt;successfulMapAttempts&gt;1&lt;/successfulMapAttempts&gt;
&lt;acls&gt;
&lt;name&gt;mapreduce.job.acl-modify-job&lt;/name&gt;
&lt;value&gt; &lt;/value&gt;
&lt;/acls&gt;
&lt;acls&gt;
&lt;name&gt;mapreduce.job.acl-view-job&lt;/name&gt;
&lt;value&gt; &lt;/value&gt;
&lt;/acls&gt;
&lt;/job&gt;
&lt;/jobs&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Job_API"></a>Job API</h2>
<p>A job resource contains information about a particular job that was started by this application master. Certain fields are only accessible if user has permissions - depends on acl settings.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<p>Use the following URI to obtain a job object, for a job identified by the jobid value.</p>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/{jobid}">http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/{jobid}</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_job_object"></a>Elements of the <i>job</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> id </td>
<td align="left"> string </td>
<td align="left"> The job id </td></tr>
<tr class="a">
<td align="left"> name </td>
<td align="left"> string </td>
<td align="left"> The job name </td></tr>
<tr class="b">
<td align="left"> user </td>
<td align="left"> string </td>
<td align="left"> The user name </td></tr>
<tr class="a">
<td align="left"> state </td>
<td align="left"> string </td>
<td align="left"> the job state - valid values are: NEW, INITED, RUNNING, SUCCEEDED, FAILED, KILL_WAIT, KILLED, ERROR </td></tr>
<tr class="b">
<td align="left"> startTime </td>
<td align="left"> long </td>
<td align="left"> The time the job started (in ms since epoch) </td></tr>
<tr class="a">
<td align="left"> finishTime </td>
<td align="left"> long </td>
<td align="left"> The time the job finished (in ms since epoch) </td></tr>
<tr class="b">
<td align="left"> elapsedTime </td>
<td align="left"> long </td>
<td align="left"> The elapsed time since job started (in ms) </td></tr>
<tr class="a">
<td align="left"> mapsTotal </td>
<td align="left"> int </td>
<td align="left"> The total number of maps </td></tr>
<tr class="b">
<td align="left"> mapsCompleted </td>
<td align="left"> int </td>
<td align="left"> The number of completed maps </td></tr>
<tr class="a">
<td align="left"> reducesTotal </td>
<td align="left"> int </td>
<td align="left"> The total number of reduces </td></tr>
<tr class="b">
<td align="left"> reducesCompleted </td>
<td align="left"> int </td>
<td align="left"> The number of completed reduces </td></tr>
<tr class="a">
<td align="left"> diagnostics </td>
<td align="left"> string </td>
<td align="left"> A diagnostic message </td></tr>
<tr class="b">
<td align="left"> uberized </td>
<td align="left"> boolean </td>
<td align="left"> Indicates if the job was an uber job - ran completely in the application master </td></tr>
<tr class="a">
<td align="left"> mapsPending </td>
<td align="left"> int </td>
<td align="left"> The number of maps still to be run </td></tr>
<tr class="b">
<td align="left"> mapsRunning </td>
<td align="left"> int </td>
<td align="left"> The number of running maps </td></tr>
<tr class="a">
<td align="left"> reducesPending </td>
<td align="left"> int </td>
<td align="left"> The number of reduces still to be run </td></tr>
<tr class="b">
<td align="left"> reducesRunning </td>
<td align="left"> int </td>
<td align="left"> The number of running reduces </td></tr>
<tr class="a">
<td align="left"> newReduceAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of new reduce attempts </td></tr>
<tr class="b">
<td align="left"> runningReduceAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of running reduce attempts </td></tr>
<tr class="a">
<td align="left"> failedReduceAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of failed reduce attempts </td></tr>
<tr class="b">
<td align="left"> killedReduceAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of killed reduce attempts </td></tr>
<tr class="a">
<td align="left"> successfulReduceAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of successful reduce attempts </td></tr>
<tr class="b">
<td align="left"> newMapAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of new map attempts </td></tr>
<tr class="a">
<td align="left"> runningMapAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of running map attempts </td></tr>
<tr class="b">
<td align="left"> failedMapAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of failed map attempts </td></tr>
<tr class="a">
<td align="left"> killedMapAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of killed map attempts </td></tr>
<tr class="b">
<td align="left"> successfulMapAttempts </td>
<td align="left"> int </td>
<td align="left"> The number of successful map attempts </td></tr>
<tr class="a">
<td align="left"> acls </td>
<td align="left"> array of acls(json)/zero or more acls objects(xml) </td>
<td align="left"> A collection of acls objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_acls_object"></a>Elements of the <i>acls</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> value </td>
<td align="left"> string </td>
<td align="left"> The acl value </td></tr>
<tr class="a">
<td align="left"> name </td>
<td align="left"> string </td>
<td align="left"> The acl name </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Server: Jetty(6.1.26)
Content-Length: 720
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;job&quot; : {
&quot;runningReduceAttempts&quot; : 1,
&quot;reduceProgress&quot; : 100,
&quot;failedReduceAttempts&quot; : 0,
&quot;newMapAttempts&quot; : 0,
&quot;mapsRunning&quot; : 0,
&quot;state&quot; : &quot;RUNNING&quot;,
&quot;successfulReduceAttempts&quot; : 0,
&quot;reducesRunning&quot; : 1,
&quot;acls&quot; : [
{
&quot;value&quot; : &quot; &quot;,
&quot;name&quot; : &quot;mapreduce.job.acl-modify-job&quot;
},
{
&quot;value&quot; : &quot; &quot;,
&quot;name&quot; : &quot;mapreduce.job.acl-view-job&quot;
}
],
&quot;reducesPending&quot; : 0,
&quot;user&quot; : &quot;user1&quot;,
&quot;reducesTotal&quot; : 1,
&quot;mapsCompleted&quot; : 1,
&quot;startTime&quot; : 1326238769379,
&quot;id&quot; : &quot;job_1326232085508_4_4&quot;,
&quot;successfulMapAttempts&quot; : 1,
&quot;runningMapAttempts&quot; : 0,
&quot;newReduceAttempts&quot; : 0,
&quot;name&quot; : &quot;Sleep job&quot;,
&quot;mapsPending&quot; : 0,
&quot;elapsedTime&quot; : 59437,
&quot;reducesCompleted&quot; : 0,
&quot;mapProgress&quot; : 100,
&quot;diagnostics&quot; : &quot;&quot;,
&quot;failedMapAttempts&quot; : 0,
&quot;killedReduceAttempts&quot; : 0,
&quot;mapsTotal&quot; : 1,
&quot;uberized&quot; : false,
&quot;killedMapAttempts&quot; : 0,
&quot;finishTime&quot; : 0
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 1201
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;job&gt;
&lt;startTime&gt;1326238769379&lt;/startTime&gt;
&lt;finishTime&gt;0&lt;/finishTime&gt;
&lt;elapsedTime&gt;59474&lt;/elapsedTime&gt;
&lt;id&gt;job_1326232085508_4_4&lt;/id&gt;
&lt;name&gt;Sleep job&lt;/name&gt;
&lt;user&gt;user1&lt;/user&gt;
&lt;state&gt;RUNNING&lt;/state&gt;
&lt;mapsTotal&gt;1&lt;/mapsTotal&gt;
&lt;mapsCompleted&gt;1&lt;/mapsCompleted&gt;
&lt;reducesTotal&gt;1&lt;/reducesTotal&gt;
&lt;reducesCompleted&gt;0&lt;/reducesCompleted&gt;
&lt;mapProgress&gt;100.0&lt;/mapProgress&gt;
&lt;reduceProgress&gt;100.0&lt;/reduceProgress&gt;
&lt;mapsPending&gt;0&lt;/mapsPending&gt;
&lt;mapsRunning&gt;0&lt;/mapsRunning&gt;
&lt;reducesPending&gt;0&lt;/reducesPending&gt;
&lt;reducesRunning&gt;1&lt;/reducesRunning&gt;
&lt;uberized&gt;false&lt;/uberized&gt;
&lt;diagnostics/&gt;
&lt;newReduceAttempts&gt;0&lt;/newReduceAttempts&gt;
&lt;runningReduceAttempts&gt;1&lt;/runningReduceAttempts&gt;
&lt;failedReduceAttempts&gt;0&lt;/failedReduceAttempts&gt;
&lt;killedReduceAttempts&gt;0&lt;/killedReduceAttempts&gt;
&lt;successfulReduceAttempts&gt;0&lt;/successfulReduceAttempts&gt;
&lt;newMapAttempts&gt;0&lt;/newMapAttempts&gt;
&lt;runningMapAttempts&gt;0&lt;/runningMapAttempts&gt;
&lt;failedMapAttempts&gt;0&lt;/failedMapAttempts&gt;
&lt;killedMapAttempts&gt;0&lt;/killedMapAttempts&gt;
&lt;successfulMapAttempts&gt;1&lt;/successfulMapAttempts&gt;
&lt;acls&gt;
&lt;name&gt;mapreduce.job.acl-modify-job&lt;/name&gt;
&lt;value&gt; &lt;/value&gt;
&lt;/acls&gt;
&lt;acls&gt;
&lt;name&gt;mapreduce.job.acl-view-job&lt;/name&gt; &lt;value&gt; &lt;/value&gt;
&lt;/acls&gt;
&lt;/job&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Job_Attempts_API"></a>Job Attempts API</h2>
<p>With the job attempts API, you can obtain a collection of resources that represent the job attempts. When you run a GET operation on this resource, you obtain a collection of Job Attempt Objects.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<ul>
<li><a class="externalLink" href="http://history-server-http-address:port/ws/v1/history/jobs/{jobid}/jobattempts">http://history-server-http-address:port/ws/v1/history/jobs/{jobid}/jobattempts</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_jobAttempts_object"></a>Elements of the <i>jobAttempts</i> object</h3>
<p>When you make a request for the list of job attempts, the information will be returned as an array of job attempt objects.</p>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> jobAttempt </td>
<td align="left"> array of job attempt objects(JSON)/zero or more job attempt objects(XML) </td>
<td align="left"> The collection of job attempt objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_jobAttempt_object"></a>Elements of the <i>jobAttempt</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> id </td>
<td align="left"> string </td>
<td align="left"> The job attempt id </td></tr>
<tr class="a">
<td align="left"> nodeId </td>
<td align="left"> string </td>
<td align="left"> The node id of the node the attempt ran on </td></tr>
<tr class="b">
<td align="left"> nodeHttpAddress </td>
<td align="left"> string </td>
<td align="left"> The node http address of the node the attempt ran on </td></tr>
<tr class="a">
<td align="left"> logsLink </td>
<td align="left"> string </td>
<td align="left"> The http link to the job attempt logs </td></tr>
<tr class="b">
<td align="left"> containerId </td>
<td align="left"> string </td>
<td align="left"> The id of the container for the job attempt </td></tr>
<tr class="a">
<td align="left"> startTime </td>
<td align="left"> long </td>
<td align="left"> The start time of the attempt (in ms since epoch) </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/jobattempts
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;jobAttempts&quot; : {
&quot;jobAttempt&quot; : [
{
&quot;nodeId&quot; : &quot;host.domain.com:8041&quot;,
&quot;nodeHttpAddress&quot; : &quot;host.domain.com:8042&quot;,
&quot;startTime&quot; : 1326238773493,
&quot;id&quot; : 1,
&quot;logsLink&quot; : &quot;http://host.domain.com:8042/node/containerlogs/container_1326232085508_0004_01_000001&quot;,
&quot;containerId&quot; : &quot;container_1326232085508_0004_01_000001&quot;
}
]
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/jobattempts
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 498
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobAttempts&gt;
&lt;jobAttempt&gt;
&lt;nodeHttpAddress&gt;host.domain.com:8042&lt;/nodeHttpAddress&gt;
&lt;nodeId&gt;host.domain.com:8041&lt;/nodeId&gt;
&lt;id&gt;1&lt;/id&gt;
&lt;startTime&gt;1326238773493&lt;/startTime&gt;
&lt;containerId&gt;container_1326232085508_0004_01_000001&lt;/containerId&gt;
&lt;logsLink&gt;http://host.domain.com:8042/node/containerlogs/container_1326232085508_0004_01_000001&lt;/logsLink&gt;
&lt;/jobAttempt&gt;
&lt;/jobAttempts&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Job_Counters_API"></a>Job Counters API</h2>
<p>With the job counters API, you can object a collection of resources that represent all the counters for that job.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/{jobid}/counters">http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/{jobid}/counters</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_jobCounters_object"></a>Elements of the <i>jobCounters</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> id </td>
<td align="left"> string </td>
<td align="left"> The job id </td></tr>
<tr class="a">
<td align="left"> counterGroup </td>
<td align="left"> array of counterGroup objects(JSON)/zero or more counterGroup objects(XML) </td>
<td align="left"> A collection of counter group objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_counterGroup_object"></a>Elements of the <i>counterGroup</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> counterGroupName </td>
<td align="left"> string </td>
<td align="left"> The name of the counter group </td></tr>
<tr class="a">
<td align="left"> counter </td>
<td align="left"> array of counter objects(JSON)/zero or more counter objects(XML) </td>
<td align="left"> A collection of counter objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_counter_object"></a>Elements of the <i>counter</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> name </td>
<td align="left"> string </td>
<td align="left"> The name of the counter </td></tr>
<tr class="a">
<td align="left"> reduceCounterValue </td>
<td align="left"> long </td>
<td align="left"> The counter value of reduce tasks </td></tr>
<tr class="b">
<td align="left"> mapCounterValue </td>
<td align="left"> long </td>
<td align="left"> The counter value of map tasks </td></tr>
<tr class="a">
<td align="left"> totalCounterValue </td>
<td align="left"> long </td>
<td align="left"> The counter value of all tasks </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/counters
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;jobCounters&quot; : {
&quot;id&quot; : &quot;job_1326232085508_4_4&quot;,
&quot;counterGroup&quot; : [
{
&quot;counterGroupName&quot; : &quot;Shuffle Errors&quot;,
&quot;counter&quot; : [
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;BAD_ID&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;CONNECTION&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;IO_ERROR&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;WRONG_LENGTH&quot;
}, {
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;WRONG_MAP&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;WRONG_REDUCE&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.FileSystemCounter&quot;,
&quot;counter&quot; : [
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 2483,
&quot;name&quot; : &quot;FILE_BYTES_READ&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 108763,
&quot;name&quot; : &quot;FILE_BYTES_WRITTEN&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;FILE_READ_OPS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;FILE_LARGE_READ_OPS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;FILE_WRITE_OPS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 48,
&quot;name&quot; : &quot;HDFS_BYTES_READ&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;HDFS_BYTES_WRITTEN&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 1,
&quot;name&quot; : &quot;HDFS_READ_OPS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;HDFS_LARGE_READ_OPS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;HDFS_WRITE_OPS&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.TaskCounter&quot;,
&quot;counter&quot; : [
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 1,
&quot;name&quot; : &quot;MAP_INPUT_RECORDS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 1200,
&quot;name&quot; : &quot;MAP_OUTPUT_RECORDS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 4800,
&quot;name&quot; : &quot;MAP_OUTPUT_BYTES&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 2235,
&quot;name&quot; : &quot;MAP_OUTPUT_MATERIALIZED_BYTES&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 48,
&quot;name&quot; : &quot;SPLIT_RAW_BYTES&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;COMBINE_INPUT_RECORDS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;COMBINE_OUTPUT_RECORDS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 460,
&quot;name&quot; : &quot;REDUCE_INPUT_GROUPS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 2235,
&quot;name&quot; : &quot;REDUCE_SHUFFLE_BYTES&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 460,
&quot;name&quot; : &quot;REDUCE_INPUT_RECORDS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;REDUCE_OUTPUT_RECORDS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 1200,
&quot;name&quot; : &quot;SPILLED_RECORDS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 1,
&quot;name&quot; : &quot;SHUFFLED_MAPS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;FAILED_SHUFFLE&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 1,
&quot;name&quot; : &quot;MERGED_MAP_OUTPUTS&quot;
}, {
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 58,
&quot;name&quot; : &quot;GC_TIME_MILLIS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 1580,
&quot;name&quot; : &quot;CPU_MILLISECONDS&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 462643200,
&quot;name&quot; : &quot;PHYSICAL_MEMORY_BYTES&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 2149728256,
&quot;name&quot; : &quot;VIRTUAL_MEMORY_BYTES&quot;
},
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 357957632,
&quot;name&quot; : &quot;COMMITTED_HEAP_BYTES&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.lib.input.FileInputFormatCounter&quot;,
&quot;counter&quot; : [
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;BYTES_READ&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.lib.output.FileOutputFormatCounter&quot;,
&quot;counter&quot; : [
{
&quot;reduceCounterValue&quot; : 0,
&quot;mapCounterValue&quot; : 0,
&quot;totalCounterValue&quot; : 0,
&quot;name&quot; : &quot;BYTES_WRITTEN&quot;
}
]
}
]
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/counters
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 7027
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobCounters&gt;
&lt;id&gt;job_1326232085508_4_4&lt;/id&gt;
&lt;counterGroup&gt;
&lt;counterGroupName&gt;Shuffle Errors&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;BAD_ID&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;CONNECTION&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;IO_ERROR&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_LENGTH&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_MAP&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_REDUCE&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;/counterGroup&gt;
&lt;counterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.FileSystemCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;FILE_BYTES_READ&lt;/name&gt;
&lt;totalCounterValue&gt;2483&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_BYTES_WRITTEN&lt;/name&gt;
&lt;totalCounterValue&gt;108763&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_READ_OPS&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_LARGE_READ_OPS&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_WRITE_OPS&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_BYTES_READ&lt;/name&gt;
&lt;totalCounterValue&gt;48&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_BYTES_WRITTEN&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_READ_OPS&lt;/name&gt;
&lt;totalCounterValue&gt;1&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_LARGE_READ_OPS&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_WRITE_OPS&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;/counterGroup&gt;
&lt;counterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.TaskCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;MAP_INPUT_RECORDS&lt;/name&gt;
&lt;totalCounterValue&gt;1&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;MAP_OUTPUT_RECORDS&lt;/name&gt;
&lt;totalCounterValue&gt;1200&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;MAP_OUTPUT_BYTES&lt;/name&gt;
&lt;totalCounterValue&gt;4800&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;MAP_OUTPUT_MATERIALIZED_BYTES&lt;/name&gt;
&lt;totalCounterValue&gt;2235&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;SPLIT_RAW_BYTES&lt;/name&gt;
&lt;totalCounterValue&gt;48&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;COMBINE_INPUT_RECORDS&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;COMBINE_OUTPUT_RECORDS&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_INPUT_GROUPS&lt;/name&gt;
&lt;totalCounterValue&gt;460&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_SHUFFLE_BYTES&lt;/name&gt;
&lt;totalCounterValue&gt;2235&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_INPUT_RECORDS&lt;/name&gt;
&lt;totalCounterValue&gt;460&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_OUTPUT_RECORDS&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;SPILLED_RECORDS&lt;/name&gt;
&lt;totalCounterValue&gt;1200&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;SHUFFLED_MAPS&lt;/name&gt;
&lt;totalCounterValue&gt;1&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FAILED_SHUFFLE&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;MERGED_MAP_OUTPUTS&lt;/name&gt;
&lt;totalCounterValue&gt;1&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;GC_TIME_MILLIS&lt;/name&gt;
&lt;totalCounterValue&gt;58&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;CPU_MILLISECONDS&lt;/name&gt;
&lt;totalCounterValue&gt;1580&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;PHYSICAL_MEMORY_BYTES&lt;/name&gt;
&lt;totalCounterValue&gt;462643200&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;VIRTUAL_MEMORY_BYTES&lt;/name&gt;
&lt;totalCounterValue&gt;2149728256&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;COMMITTED_HEAP_BYTES&lt;/name&gt;
&lt;totalCounterValue&gt;357957632&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;/counterGroup&gt;
&lt;counterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.lib.input.FileInputFormatCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;BYTES_READ&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt; &lt;/counterGroup&gt; &lt;counterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.lib.output.FileOutputFormatCounter&lt;/counterGroupName&gt;
&lt;counter&gt; &lt;name&gt;BYTES_WRITTEN&lt;/name&gt;
&lt;totalCounterValue&gt;0&lt;/totalCounterValue&gt;
&lt;mapCounterValue&gt;0&lt;/mapCounterValue&gt;
&lt;reduceCounterValue&gt;0&lt;/reduceCounterValue&gt;
&lt;/counter&gt;
&lt;/counterGroup&gt;
&lt;/jobCounters&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Job_Conf_API"></a>Job Conf API</h2>
<p>A job configuration resource contains information about the job configuration for this job.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<p>Use the following URI to obtain th job configuration information, from a job identified by the jobid value.</p>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/conf">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/conf</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_conf_object"></a>Elements of the <i>conf</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> path </td>
<td align="left"> string </td>
<td align="left"> The path to the job configuration file </td></tr>
<tr class="a">
<td align="left"> property </td>
<td align="left"> array of the configuration properties(JSON)/zero or more property objects(XML) </td>
<td align="left"> Collection of property objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_property_object"></a>Elements of the <i>property</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> name </td>
<td align="left"> string </td>
<td align="left"> The name of the configuration property </td></tr>
<tr class="a">
<td align="left"> value </td>
<td align="left"> string </td>
<td align="left"> The value of the configuration property </td></tr>
<tr class="b">
<td align="left"> source </td>
<td align="left"> string </td>
<td align="left"> The location this configuration object came from. If there is more then one of these it shows the history with the latest source at the end of the list. </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/conf
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<p>This is a small snippet of the output as the output if very large. The real output contains every property in your job configuration file.</p>
<div>
<div>
<pre class="source">{
&quot;conf&quot; : {
&quot;path&quot; : &quot;hdfs://host.domain.com:9000/user/user1/.staging/job_1326232085508_0004/job.xml&quot;,
&quot;property&quot; : [
{
&quot;value&quot; : &quot;/home/hadoop/hdfs/data&quot;,
&quot;name&quot; : &quot;dfs.datanode.data.dir&quot;,
&quot;source&quot; : [&quot;hdfs-site.xml&quot;, &quot;job.xml&quot;]
},
{
&quot;value&quot; : &quot;org.apache.hadoop.yarn.server.webproxy.amfilter.AmFilterInitializer&quot;,
&quot;name&quot; : &quot;hadoop.http.filter.initializers&quot;
&quot;source&quot; : [&quot;programmatically&quot;, &quot;job.xml&quot;]
},
{
&quot;value&quot; : &quot;/home/hadoop/tmp&quot;,
&quot;name&quot; : &quot;mapreduce.cluster.temp.dir&quot;
&quot;source&quot; : [&quot;mapred-site.xml&quot;]
},
...
]
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/conf
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 552
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;conf&gt;
&lt;path&gt;hdfs://host.domain.com:9000/user/user1/.staging/job_1326232085508_0004/job.xml&lt;/path&gt;
&lt;property&gt;
&lt;name&gt;dfs.datanode.data.dir&lt;/name&gt;
&lt;value&gt;/home/hadoop/hdfs/data&lt;/value&gt;
&lt;source&gt;hdfs-site.xml&lt;/source&gt;
&lt;source&gt;job.xml&lt;/source&gt;
&lt;/property&gt;
&lt;property&gt;
&lt;name&gt;hadoop.http.filter.initializers&lt;/name&gt;
&lt;value&gt;org.apache.hadoop.yarn.server.webproxy.amfilter.AmFilterInitializer&lt;/value&gt;
&lt;source&gt;programmatically&lt;/source&gt;
&lt;source&gt;job.xml&lt;/source&gt;
&lt;/property&gt;
&lt;property&gt;
&lt;name&gt;mapreduce.cluster.temp.dir&lt;/name&gt;
&lt;value&gt;/home/hadoop/tmp&lt;/value&gt;
&lt;source&gt;mapred-site.xml&lt;/source&gt;
&lt;/property&gt;
...
&lt;/conf&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Tasks_API"></a>Tasks API</h2>
<p>With the tasks API, you can obtain a collection of resources that represent all the tasks for a job. When you run a GET operation on this resource, you obtain a collection of Task Objects.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<ul>
<li>type - type of task, valid values are m or r. m for map task or r for reduce task.</li>
</ul></div>
<div class="section">
<h3><a name="Elements_of_the_tasks_object"></a>Elements of the <i>tasks</i> object</h3>
<p>When you make a request for the list of tasks , the information will be returned as an array of task objects. See also <a href="#Task_API">Task API</a> for syntax of the task object.</p>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> task </td>
<td align="left"> array of task objects(JSON)/zero or more task objects(XML) </td>
<td align="left"> The collection of task objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;tasks&quot; : {
&quot;task&quot; : [
{
&quot;progress&quot; : 100,
&quot;elapsedTime&quot; : 2768,
&quot;state&quot; : &quot;SUCCEEDED&quot;,
&quot;startTime&quot; : 1326238773493,
&quot;id&quot; : &quot;task_1326232085508_4_4_m_0&quot;,
&quot;type&quot; : &quot;MAP&quot;,
&quot;successfulAttempt&quot; : &quot;attempt_1326232085508_4_4_m_0_0&quot;,
&quot;finishTime&quot; : 1326238776261
},
{
&quot;progress&quot; : 100,
&quot;elapsedTime&quot; : 0,
&quot;state&quot; : &quot;RUNNING&quot;,
&quot;startTime&quot; : 1326238777460,
&quot;id&quot; : &quot;task_1326232085508_4_4_r_0&quot;,
&quot;type&quot; : &quot;REDUCE&quot;,
&quot;successfulAttempt&quot; : &quot;&quot;,
&quot;finishTime&quot; : 0
}
]
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 603
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;tasks&gt;
&lt;task&gt;
&lt;startTime&gt;1326238773493&lt;/startTime&gt;
&lt;finishTime&gt;1326238776261&lt;/finishTime&gt;
&lt;elapsedTime&gt;2768&lt;/elapsedTime&gt;
&lt;progress&gt;100.0&lt;/progress&gt;
&lt;id&gt;task_1326232085508_4_4_m_0&lt;/id&gt;
&lt;state&gt;SUCCEEDED&lt;/state&gt;
&lt;type&gt;MAP&lt;/type&gt;
&lt;successfulAttempt&gt;attempt_1326232085508_4_4_m_0_0&lt;/successfulAttempt&gt;
&lt;/task&gt;
&lt;task&gt;
&lt;startTime&gt;1326238777460&lt;/startTime&gt;
&lt;finishTime&gt;0&lt;/finishTime&gt;
&lt;elapsedTime&gt;0&lt;/elapsedTime&gt;
&lt;progress&gt;100.0&lt;/progress&gt;
&lt;id&gt;task_1326232085508_4_4_r_0&lt;/id&gt;
&lt;state&gt;RUNNING&lt;/state&gt;
&lt;type&gt;REDUCE&lt;/type&gt;
&lt;successfulAttempt/&gt;
&lt;/task&gt;
&lt;/tasks&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Task_API"></a>Task API</h2>
<p>A Task resource contains information about a particular task within a job.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<p>Use the following URI to obtain an Task Object, from a task identified by the taskid value.</p>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_task_object"></a>Elements of the <i>task</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> id </td>
<td align="left"> string </td>
<td align="left"> The task id </td></tr>
<tr class="a">
<td align="left"> state </td>
<td align="left"> string </td>
<td align="left"> The state of the task - valid values are: NEW, SCHEDULED, RUNNING, SUCCEEDED, FAILED, KILL_WAIT, KILLED </td></tr>
<tr class="b">
<td align="left"> type </td>
<td align="left"> string </td>
<td align="left"> The task type - MAP or REDUCE </td></tr>
<tr class="a">
<td align="left"> successfulAttempt </td>
<td align="left"> string </td>
<td align="left"> The the id of the last successful attempt </td></tr>
<tr class="b">
<td align="left"> progress </td>
<td align="left"> float </td>
<td align="left"> The progress of the task as a percent </td></tr>
<tr class="a">
<td align="left"> startTime </td>
<td align="left"> long </td>
<td align="left"> The time in which the task started (in ms since epoch) </td></tr>
<tr class="b">
<td align="left"> finishTime </td>
<td align="left"> long </td>
<td align="left"> The time in which the task finished (in ms since epoch) </td></tr>
<tr class="a">
<td align="left"> elapsedTime </td>
<td align="left"> long </td>
<td align="left"> The elapsed time since the application started (in ms) </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;task&quot; : {
&quot;progress&quot; : 100,
&quot;elapsedTime&quot; : 0,
&quot;state&quot; : &quot;RUNNING&quot;,
&quot;startTime&quot; : 1326238777460,
&quot;id&quot; : &quot;task_1326232085508_4_4_r_0&quot;,
&quot;type&quot; : &quot;REDUCE&quot;,
&quot;successfulAttempt&quot; : &quot;&quot;,
&quot;finishTime&quot; : 0
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 299
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;task&gt;
&lt;startTime&gt;1326238777460&lt;/startTime&gt;
&lt;finishTime&gt;0&lt;/finishTime&gt;
&lt;elapsedTime&gt;0&lt;/elapsedTime&gt;
&lt;progress&gt;100.0&lt;/progress&gt;
&lt;id&gt;task_1326232085508_4_4_r_0&lt;/id&gt;
&lt;state&gt;RUNNING&lt;/state&gt;
&lt;type&gt;REDUCE&lt;/type&gt;
&lt;successfulAttempt/&gt;
&lt;/task&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Task_Counters_API"></a>Task Counters API</h2>
<p>With the task counters API, you can object a collection of resources that represent all the counters for that task.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/counters">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/counters</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_jobTaskCounters_object"></a>Elements of the <i>jobTaskCounters</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> id </td>
<td align="left"> string </td>
<td align="left"> The task id </td></tr>
<tr class="a">
<td align="left"> taskcounterGroup </td>
<td align="left"> array of counterGroup objects(JSON)/zero or more counterGroup objects(XML) </td>
<td align="left"> A collection of counter group objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_counterGroup_object"></a>Elements of the <i>counterGroup</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> counterGroupName </td>
<td align="left"> string </td>
<td align="left"> The name of the counter group </td></tr>
<tr class="a">
<td align="left"> counter </td>
<td align="left"> array of counter objects(JSON)/zero or more counter objects(XML) </td>
<td align="left"> A collection of counter objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_counter_object"></a>Elements of the <i>counter</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> name </td>
<td align="left"> string </td>
<td align="left"> The name of the counter </td></tr>
<tr class="a">
<td align="left"> value </td>
<td align="left"> long </td>
<td align="left"> The value of the counter </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0/counters
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;jobTaskCounters&quot; : {
&quot;id&quot; : &quot;task_1326232085508_4_4_r_0&quot;,
&quot;taskCounterGroup&quot; : [
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.FileSystemCounter&quot;,
&quot;counter&quot; : [
{
&quot;value&quot; : 2363,
&quot;name&quot; : &quot;FILE_BYTES_READ&quot;
},
{
&quot;value&quot; : 54372,
&quot;name&quot; : &quot;FILE_BYTES_WRITTEN&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;FILE_READ_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;FILE_LARGE_READ_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;FILE_WRITE_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_BYTES_READ&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_BYTES_WRITTEN&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_READ_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_LARGE_READ_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_WRITE_OPS&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.TaskCounter&quot;,
&quot;counter&quot; : [
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;COMBINE_INPUT_RECORDS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;COMBINE_OUTPUT_RECORDS&quot;
},
{
&quot;value&quot; : 460,
&quot;name&quot; : &quot;REDUCE_INPUT_GROUPS&quot;
},
{
&quot;value&quot; : 2235,
&quot;name&quot; : &quot;REDUCE_SHUFFLE_BYTES&quot;
},
{
&quot;value&quot; : 460,
&quot;name&quot; : &quot;REDUCE_INPUT_RECORDS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;REDUCE_OUTPUT_RECORDS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;SPILLED_RECORDS&quot;
},
{
&quot;value&quot; : 1,
&quot;name&quot; : &quot;SHUFFLED_MAPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;FAILED_SHUFFLE&quot;
},
{
&quot;value&quot; : 1,
&quot;name&quot; : &quot;MERGED_MAP_OUTPUTS&quot;
},
{
&quot;value&quot; : 26,
&quot;name&quot; : &quot;GC_TIME_MILLIS&quot;
},
{
&quot;value&quot; : 860,
&quot;name&quot; : &quot;CPU_MILLISECONDS&quot;
},
{
&quot;value&quot; : 107839488,
&quot;name&quot; : &quot;PHYSICAL_MEMORY_BYTES&quot;
},
{
&quot;value&quot; : 1123147776,
&quot;name&quot; : &quot;VIRTUAL_MEMORY_BYTES&quot;
},
{
&quot;value&quot; : 57475072,
&quot;name&quot; : &quot;COMMITTED_HEAP_BYTES&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;Shuffle Errors&quot;,
&quot;counter&quot; : [
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;BAD_ID&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;CONNECTION&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;IO_ERROR&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;WRONG_LENGTH&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;WRONG_MAP&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;WRONG_REDUCE&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.lib.output.FileOutputFormatCounter&quot;,
&quot;counter&quot; : [
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;BYTES_WRITTEN&quot;
}
]
}
]
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0/counters
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 2660
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobTaskCounters&gt;
&lt;id&gt;task_1326232085508_4_4_r_0&lt;/id&gt;
&lt;taskCounterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.FileSystemCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;FILE_BYTES_READ&lt;/name&gt;
&lt;value&gt;2363&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_BYTES_WRITTEN&lt;/name&gt;
&lt;value&gt;54372&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_READ_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_LARGE_READ_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_WRITE_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_BYTES_READ&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_BYTES_WRITTEN&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_READ_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_LARGE_READ_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_WRITE_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;/taskCounterGroup&gt;
&lt;taskCounterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.TaskCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;COMBINE_INPUT_RECORDS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;COMBINE_OUTPUT_RECORDS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_INPUT_GROUPS&lt;/name&gt;
&lt;value&gt;460&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_SHUFFLE_BYTES&lt;/name&gt;
&lt;value&gt;2235&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_INPUT_RECORDS&lt;/name&gt;
&lt;value&gt;460&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_OUTPUT_RECORDS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;SPILLED_RECORDS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;SHUFFLED_MAPS&lt;/name&gt;
&lt;value&gt;1&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FAILED_SHUFFLE&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;MERGED_MAP_OUTPUTS&lt;/name&gt;
&lt;value&gt;1&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;GC_TIME_MILLIS&lt;/name&gt;
&lt;value&gt;26&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;CPU_MILLISECONDS&lt;/name&gt;
&lt;value&gt;860&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;PHYSICAL_MEMORY_BYTES&lt;/name&gt;
&lt;value&gt;107839488&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;VIRTUAL_MEMORY_BYTES&lt;/name&gt;
&lt;value&gt;1123147776&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;COMMITTED_HEAP_BYTES&lt;/name&gt;
&lt;value&gt;57475072&lt;/value&gt;
&lt;/counter&gt;
&lt;/taskCounterGroup&gt;
&lt;taskCounterGroup&gt;
&lt;counterGroupName&gt;Shuffle Errors&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;BAD_ID&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;CONNECTION&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;IO_ERROR&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_LENGTH&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_MAP&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_REDUCE&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;/taskCounterGroup&gt;
&lt;taskCounterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.lib.output.FileOutputFormatCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;BYTES_WRITTEN&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;/taskCounterGroup&gt;
&lt;/jobTaskCounters&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Task_Attempts_API"></a>Task Attempts API</h2>
<p>With the task attempts API, you can obtain a collection of resources that represent a task attempt within a job. When you run a GET operation on this resource, you obtain a collection of Task Attempt Objects.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/attempts">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/attempts</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_taskAttempts_object"></a>Elements of the <i>taskAttempts</i> object</h3>
<p>When you make a request for the list of task attempts, the information will be returned as an array of task attempt objects. See also <a href="#Task_Attempt_API">Task Attempt API</a> for syntax of the task object.</p>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> taskAttempt </td>
<td align="left"> array of task attempt objects(JSON)/zero or more task attempt objects(XML) </td>
<td align="left"> The collection of task attempt objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0/attempts
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;taskAttempts&quot; : {
&quot;taskAttempt&quot; : [
{
&quot;elapsedMergeTime&quot; : 47,
&quot;shuffleFinishTime&quot; : 1326238780052,
&quot;assignedContainerId&quot; : &quot;container_1326232085508_0004_01_000003&quot;,
&quot;progress&quot; : 100,
&quot;elapsedTime&quot; : 0,
&quot;state&quot; : &quot;RUNNING&quot;,
&quot;elapsedShuffleTime&quot; : 2592,
&quot;mergeFinishTime&quot; : 1326238780099,
&quot;rack&quot; : &quot;/98.139.92.0&quot;,
&quot;elapsedReduceTime&quot; : 0,
&quot;nodeHttpAddress&quot; : &quot;host.domain.com:8042&quot;,
&quot;type&quot; : &quot;REDUCE&quot;,
&quot;startTime&quot; : 1326238777460,
&quot;id&quot; : &quot;attempt_1326232085508_4_4_r_0_0&quot;,
&quot;finishTime&quot; : 0
}
]
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0/attempts
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 807
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;taskAttempts&gt;
&lt;taskAttempt&gt;
&lt;startTime&gt;1326238777460&lt;/startTime&gt;
&lt;finishTime&gt;0&lt;/finishTime&gt;
&lt;elapsedTime&gt;0&lt;/elapsedTime&gt;
&lt;progress&gt;100.0&lt;/progress&gt;
&lt;id&gt;attempt_1326232085508_4_4_r_0_0&lt;/id&gt;
&lt;rack&gt;/98.139.92.0&lt;/rack&gt;
&lt;state&gt;RUNNING&lt;/state&gt;
&lt;nodeHttpAddress&gt;host.domain.com:8042&lt;/nodeHttpAddress&gt;
&lt;type&gt;REDUCE&lt;/type&gt;
&lt;assignedContainerId&gt;container_1326232085508_0004_01_000003&lt;/assignedContainerId&gt;
&lt;shuffleFinishTime&gt;1326238780052&lt;/shuffleFinishTime&gt;
&lt;mergeFinishTime&gt;1326238780099&lt;/mergeFinishTime&gt;
&lt;elapsedShuffleTime&gt;2592&lt;/elapsedShuffleTime&gt;
&lt;elapsedMergeTime&gt;47&lt;/elapsedMergeTime&gt;
&lt;elapsedReduceTime&gt;0&lt;/elapsedReduceTime&gt;
&lt;/taskAttempt&gt;
&lt;/taskAttempts&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Task_Attempt_API"></a>Task Attempt API</h2>
<p>A Task Attempt resource contains information about a particular task attempt within a job.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<p>Use the following URI to obtain an Task Attempt Object, from a task identified by the attemptid value.</p>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/attempts/{attemptid}">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/attempts/{attemptid}</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_taskAttempt_object"></a>Elements of the <i>taskAttempt</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> id </td>
<td align="left"> string </td>
<td align="left"> The task id </td></tr>
<tr class="a">
<td align="left"> rack </td>
<td align="left"> string </td>
<td align="left"> The rack </td></tr>
<tr class="b">
<td align="left"> state </td>
<td align="left"> string </td>
<td align="left"> The state of the task attempt - valid values are: NEW, UNASSIGNED, ASSIGNED, RUNNING, COMMIT_PENDING, SUCCESS_CONTAINER_CLEANUP, SUCCEEDED, FAIL_CONTAINER_CLEANUP, FAIL_TASK_CLEANUP, FAILED, KILL_CONTAINER_CLEANUP, KILL_TASK_CLEANUP, KILLED </td></tr>
<tr class="a">
<td align="left"> type </td>
<td align="left"> string </td>
<td align="left"> The type of task </td></tr>
<tr class="b">
<td align="left"> assignedContainerId </td>
<td align="left"> string </td>
<td align="left"> The container id this attempt is assigned to </td></tr>
<tr class="a">
<td align="left"> nodeHttpAddress </td>
<td align="left"> string </td>
<td align="left"> The http address of the node this task attempt ran on </td></tr>
<tr class="b">
<td align="left"> diagnostics </td>
<td align="left"> string </td>
<td align="left"> The diagnostics message </td></tr>
<tr class="a">
<td align="left"> progress </td>
<td align="left"> float </td>
<td align="left"> The progress of the task attempt as a percent </td></tr>
<tr class="b">
<td align="left"> startTime </td>
<td align="left"> long </td>
<td align="left"> The time in which the task attempt started (in ms since epoch) </td></tr>
<tr class="a">
<td align="left"> finishTime </td>
<td align="left"> long </td>
<td align="left"> The time in which the task attempt finished (in ms since epoch) </td></tr>
<tr class="b">
<td align="left"> elapsedTime </td>
<td align="left"> long </td>
<td align="left"> The elapsed time since the task attempt started (in ms) </td></tr>
</tbody>
</table>
<p>For reduce task attempts you also have the following fields:</p>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> shuffleFinishTime </td>
<td align="left"> long </td>
<td align="left"> The time at which shuffle finished (in ms since epoch) </td></tr>
<tr class="a">
<td align="left"> mergeFinishTime </td>
<td align="left"> long </td>
<td align="left"> The time at which merge finished (in ms since epoch) </td></tr>
<tr class="b">
<td align="left"> elapsedShuffleTime </td>
<td align="left"> long </td>
<td align="left"> The time it took for the shuffle phase to complete (time in ms between reduce task start and shuffle finish) </td></tr>
<tr class="a">
<td align="left"> elapsedMergeTime </td>
<td align="left"> long </td>
<td align="left"> The time it took for the merge phase to complete (time in ms between the shuffle finish and merge finish) </td></tr>
<tr class="b">
<td align="left"> elapsedReduceTime </td>
<td align="left"> long </td>
<td align="left"> The time it took for the reduce phase to complete (time in ms between merge finish to end of reduce task) </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0/attempts/attempt_1326232085508_4_4_r_0_0
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;taskAttempt&quot; : {
&quot;elapsedMergeTime&quot; : 47,
&quot;shuffleFinishTime&quot; : 1326238780052,
&quot;assignedContainerId&quot; : &quot;container_1326232085508_0004_01_000003&quot;,
&quot;progress&quot; : 100,
&quot;elapsedTime&quot; : 0,
&quot;state&quot; : &quot;RUNNING&quot;,
&quot;elapsedShuffleTime&quot; : 2592,
&quot;mergeFinishTime&quot; : 1326238780099,
&quot;rack&quot; : &quot;/98.139.92.0&quot;,
&quot;elapsedReduceTime&quot; : 0,
&quot;nodeHttpAddress&quot; : &quot;host.domain.com:8042&quot;,
&quot;startTime&quot; : 1326238777460,
&quot;id&quot; : &quot;attempt_1326232085508_4_4_r_0_0&quot;,
&quot;type&quot; : &quot;REDUCE&quot;,
&quot;finishTime&quot; : 0
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0/attempts/attempt_1326232085508_4_4_r_0_0
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 691
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;taskAttempt&gt;
&lt;startTime&gt;1326238777460&lt;/startTime&gt;
&lt;finishTime&gt;0&lt;/finishTime&gt;
&lt;elapsedTime&gt;0&lt;/elapsedTime&gt;
&lt;progress&gt;100.0&lt;/progress&gt;
&lt;id&gt;attempt_1326232085508_4_4_r_0_0&lt;/id&gt;
&lt;rack&gt;/98.139.92.0&lt;/rack&gt;
&lt;state&gt;RUNNING&lt;/state&gt;
&lt;nodeHttpAddress&gt;host.domain.com:8042&lt;/nodeHttpAddress&gt;
&lt;type&gt;REDUCE&lt;/type&gt;
&lt;assignedContainerId&gt;container_1326232085508_0004_01_000003&lt;/assignedContainerId&gt;
&lt;shuffleFinishTime&gt;1326238780052&lt;/shuffleFinishTime&gt;
&lt;mergeFinishTime&gt;1326238780099&lt;/mergeFinishTime&gt;
&lt;elapsedShuffleTime&gt;2592&lt;/elapsedShuffleTime&gt;
&lt;elapsedMergeTime&gt;47&lt;/elapsedMergeTime&gt;
&lt;elapsedReduceTime&gt;0&lt;/elapsedReduceTime&gt;
&lt;/taskAttempt&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Task_Attempt_State_API"></a>Task Attempt State API</h2>
<p>With the task attempt state API, you can query the state of a submitted task attempt as well kill a running task attempt by modifying the state of a running task attempt using a PUT request with the state set to &#x201c;KILLED&#x201d;. To perform the PUT operation, authentication has to be setup for the AM web services. In addition, you must be authorized to kill the task attempt. Currently you can only change the state to &#x201c;KILLED&#x201d;; an attempt to change the state to any other results in a 400 error response. Examples of the unauthorized and bad request errors are below. When you carry out a successful PUT, the iniital response may be a 202. You can confirm that the app is killed by repeating the PUT request until you get a 200, querying the state using the GET method or querying for task attempt information and checking the state. In the examples below, we repeat the PUT request and get a 200 response.</p>
<p>Please note that in order to kill a task attempt, you must have an authentication filter setup for the HTTP interface. The functionality requires that a username is set in the HttpServletRequest. If no filter is setup, the response will be an &#x201c;UNAUTHORIZED&#x201d; response.</p>
<p>This feature is currently in the alpha stage and may change in the future.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/attempts/{attemptid}/state">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/attempts/{attemptid}/state</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET
<ul>
<li>POST</li>
</ul>
</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_jobTaskAttemptState_object"></a>Elements of <i>jobTaskAttemptState</i> object</h3>
<p>When you make a request for the state of an app, the information returned has the following fields</p>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> state </td>
<td align="left"> string </td>
<td align="left"> The application state - can be one of &#x201c;NEW&#x201d;, &#x201c;STARTING&#x201d;, &#x201c;RUNNING&#x201d;, &#x201c;COMMIT_PENDING&#x201d;, &#x201c;SUCCEEDED&#x201d;, &#x201c;FAILED&#x201d;, &#x201c;KILLED&#x201d; </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON responses</b></p>
<p>HTTP Request</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1429692837321_0001/ws/v1/mapreduce/jobs/job_1429692837321_0001/tasks/task_1429692837321_0001_m_000000/attempts/attempt_1429692837321_0001_m_000000_0/state
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source">HTTP/1.1 200 OK
Content-Type: application/json
Server: Jetty(6.1.26)
Content-Length: 20
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;state&quot;:&quot;STARTING&quot;
}
</pre></div></div>
<p>HTTP Request</p>
<div>
<div>
<pre class="source"> PUT http://proxy-http-address:port/proxy/application_1429692837321_0001/ws/v1/mapreduce/jobs/job_1429692837321_0001/tasks/task_1429692837321_0001_m_000000/attempts/attempt_1429692837321_0001_m_000000_0/state
</pre></div></div>
<p>Request Body:</p>
<div>
<div>
<pre class="source">{
&quot;state&quot;:&quot;KILLED&quot;
}
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source">HTTP/1.1 200 OK
Content-Type: application/json
Server: Jetty(6.1.26)
Content-Length: 18
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;state&quot;:&quot;KILLED&quot;
}
</pre></div></div>
<p><b>XML responses</b></p>
<p>HTTP Request</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1429692837321_0001/ws/v1/mapreduce/jobs/job_1429692837321_0001/tasks/task_1429692837321_0001_m_000000/attempts/attempt_1429692837321_0001_m_000000_0/state
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source">HTTP/1.1 200 OK
Content-Type: application/xml
Server: Jetty(6.1.26)
Content-Length: 121
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobTaskAttemptState&gt;
&lt;state&gt;STARTING&lt;/state&gt;
&lt;/jobTaskAttemptState&gt;
</pre></div></div>
<p>HTTP Request</p>
<div>
<div>
<pre class="source"> PUT http://proxy-http-address:port/proxy/application_1429692837321_0001/ws/v1/mapreduce/jobs/job_1429692837321_0001/tasks/task_1429692837321_0001_m_000000/attempts/attempt_1429692837321_0001_m_000000_0/state
</pre></div></div>
<p>Request Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobTaskAttemptState&gt;
&lt;state&gt;KILLED&lt;/state&gt;
&lt;/jobTaskAttemptState&gt;
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source">HTTP/1.1 200 OK
Content-Type: application/xml
Server: Jetty(6.1.26)
Content-Length: 121
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobTaskAttemptState&gt;
&lt;state&gt;KILLED&lt;/state&gt;
&lt;/jobTaskAttemptState&gt;
</pre></div></div>
<p><b>Unauthorized Error Response</b></p>
<p>HTTP Request</p>
<div>
<div>
<pre class="source"> PUT http://proxy-http-address:port/proxy/application_1429692837321_0001/ws/v1/mapreduce/jobs/job_1429692837321_0001/tasks/task_1429692837321_0001_m_000000/attempts/attempt_1429692837321_0001_m_000000_0/state
</pre></div></div>
<p>Request Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobTaskAttemptState&gt;
&lt;state&gt;KILLED&lt;/state&gt;
&lt;/jobTaskAttemptState&gt;
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source">HTTP/1.1 403 Unauthorized
Content-Type: application/json
Server: Jetty(6.1.26)
</pre></div></div>
<p><b>Bad Request Error Response</b></p>
<p>HTTP Request</p>
<div>
<div>
<pre class="source"> PUT http://proxy-http-address:port/proxy/application_1429692837321_0001/ws/v1/mapreduce/jobs/job_1429692837321_0001/tasks/task_1429692837321_0001_m_000000/attempts/attempt_1429692837321_0001_m_000000_0/state
</pre></div></div>
<p>Request Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobTaskAttemptState&gt;
&lt;state&gt;RUNNING&lt;/state&gt;
&lt;/jobTaskAttemptState&gt;
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source">HTTP/1.1 400
Content-Length: 295
Content-Type: application/xml
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;RemoteException&gt;
&lt;exception&gt;BadRequestException&lt;/exception&gt;
&lt;message&gt;java.lang.Exception: Only 'KILLED' is allowed as a target state.&lt;/message&gt;
&lt;javaClassName&gt;org.apache.hadoop.yarn.webapp.BadRequestException&lt;/javaClassName&gt;
&lt;/RemoteException&gt;
</pre></div></div>
</div></div>
<div class="section">
<h2><a name="Task_Attempt_Counters_API"></a>Task Attempt Counters API</h2>
<p>With the task attempt counters API, you can object a collection of resources that represent al the counters for that task attempt.</p>
<div class="section">
<h3><a name="URI"></a>URI</h3>
<ul>
<li><a class="externalLink" href="http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/attempts/{attemptid}/counters">http://proxy-http-address:port/proxy/{appid}/ws/v1/mapreduce/jobs/{jobid}/tasks/{taskid}/attempts/{attemptid}/counters</a></li>
</ul></div>
<div class="section">
<h3><a name="HTTP_Operations_Supported"></a>HTTP Operations Supported</h3>
<ul>
<li>GET</li>
</ul></div>
<div class="section">
<h3><a name="Query_Parameters_Supported"></a>Query Parameters Supported</h3>
<div>
<div>
<pre class="source"> None
</pre></div></div>
</div>
<div class="section">
<h3><a name="Elements_of_the_jobTaskAttemptCounters_object"></a>Elements of the <i>jobTaskAttemptCounters</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> id </td>
<td align="left"> string </td>
<td align="left"> The task attempt id </td></tr>
<tr class="a">
<td align="left"> taskAttemptcounterGroup </td>
<td align="left"> array of task attempt counterGroup objects(JSON)/zero or more task attempt counterGroup objects(XML) </td>
<td align="left"> A collection of task attempt counter group objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_taskAttemptCounterGroup_object"></a>Elements of the <i>taskAttemptCounterGroup</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> counterGroupName </td>
<td align="left"> string </td>
<td align="left"> The name of the counter group </td></tr>
<tr class="a">
<td align="left"> counter </td>
<td align="left"> array of counter objects(JSON)/zero or more counter objects(XML) </td>
<td align="left"> A collection of counter objects </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Elements_of_the_counter_object"></a>Elements of the <i>counter</i> object</h3>
<table border="0" class="bodyTable">
<thead>
<tr class="a">
<th align="left"> Item </th>
<th align="left"> Data Type </th>
<th align="left"> Description </th></tr>
</thead><tbody>
<tr class="b">
<td align="left"> name </td>
<td align="left"> string </td>
<td align="left"> The name of the counter </td></tr>
<tr class="a">
<td align="left"> value </td>
<td align="left"> long </td>
<td align="left"> The value of the counter </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="Response_Examples"></a>Response Examples</h3>
<p><b>JSON response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0/attempts/attempt_1326232085508_4_4_r_0_0/counters
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">{
&quot;jobTaskAttemptCounters&quot; : {
&quot;taskAttemptCounterGroup&quot; : [
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.FileSystemCounter&quot;,
&quot;counter&quot; : [
{
&quot;value&quot; : 2363,
&quot;name&quot; : &quot;FILE_BYTES_READ&quot;
},
{
&quot;value&quot; : 54372,
&quot;name&quot; : &quot;FILE_BYTES_WRITTEN&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;FILE_READ_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;FILE_LARGE_READ_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;FILE_WRITE_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_BYTES_READ&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_BYTES_WRITTEN&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_READ_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_LARGE_READ_OPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;HDFS_WRITE_OPS&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.TaskCounter&quot;,
&quot;counter&quot; : [
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;COMBINE_INPUT_RECORDS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;COMBINE_OUTPUT_RECORDS&quot;
},
{
&quot;value&quot; : 460,
&quot;name&quot; : &quot;REDUCE_INPUT_GROUPS&quot;
},
{
&quot;value&quot; : 2235,
&quot;name&quot; : &quot;REDUCE_SHUFFLE_BYTES&quot;
},
{
&quot;value&quot; : 460,
&quot;name&quot; : &quot;REDUCE_INPUT_RECORDS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;REDUCE_OUTPUT_RECORDS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;SPILLED_RECORDS&quot;
},
{
&quot;value&quot; : 1,
&quot;name&quot; : &quot;SHUFFLED_MAPS&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;FAILED_SHUFFLE&quot;
},
{
&quot;value&quot; : 1,
&quot;name&quot; : &quot;MERGED_MAP_OUTPUTS&quot;
},
{
&quot;value&quot; : 26,
&quot;name&quot; : &quot;GC_TIME_MILLIS&quot;
},
{
&quot;value&quot; : 860,
&quot;name&quot; : &quot;CPU_MILLISECONDS&quot;
},
{
&quot;value&quot; : 107839488,
&quot;name&quot; : &quot;PHYSICAL_MEMORY_BYTES&quot;
},
{
&quot;value&quot; : 1123147776,
&quot;name&quot; : &quot;VIRTUAL_MEMORY_BYTES&quot;
},
{
&quot;value&quot; : 57475072,
&quot;name&quot; : &quot;COMMITTED_HEAP_BYTES&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;Shuffle Errors&quot;,
&quot;counter&quot; : [
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;BAD_ID&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;CONNECTION&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;IO_ERROR&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;WRONG_LENGTH&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;WRONG_MAP&quot;
},
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;WRONG_REDUCE&quot;
}
]
},
{
&quot;counterGroupName&quot; : &quot;org.apache.hadoop.mapreduce.lib.output.FileOutputFormatCounter&quot;,
&quot;counter&quot; : [
{
&quot;value&quot; : 0,
&quot;name&quot; : &quot;BYTES_WRITTEN&quot;
}
]
}
],
&quot;id&quot; : &quot;attempt_1326232085508_4_4_r_0_0&quot;
}
}
</pre></div></div>
<p><b>XML response</b></p>
<p>HTTP Request:</p>
<div>
<div>
<pre class="source"> GET http://proxy-http-address:port/proxy/application_1326232085508_0004/ws/v1/mapreduce/jobs/job_1326232085508_4_4/tasks/task_1326232085508_4_4_r_0/attempts/attempt_1326232085508_4_4_r_0_0/counters
Accept: application/xml
</pre></div></div>
<p>Response Header:</p>
<div>
<div>
<pre class="source"> HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 2735
Server: Jetty(6.1.26)
</pre></div></div>
<p>Response Body:</p>
<div>
<div>
<pre class="source">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;jobTaskAttemptCounters&gt;
&lt;id&gt;attempt_1326232085508_4_4_r_0_0&lt;/id&gt;
&lt;taskAttemptCounterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.FileSystemCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;FILE_BYTES_READ&lt;/name&gt;
&lt;value&gt;2363&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_BYTES_WRITTEN&lt;/name&gt;
&lt;value&gt;54372&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_READ_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_LARGE_READ_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FILE_WRITE_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_BYTES_READ&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_BYTES_WRITTEN&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_READ_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_LARGE_READ_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;HDFS_WRITE_OPS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;/taskAttemptCounterGroup&gt;
&lt;taskAttemptCounterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.TaskCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;COMBINE_INPUT_RECORDS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;COMBINE_OUTPUT_RECORDS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_INPUT_GROUPS&lt;/name&gt;
&lt;value&gt;460&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_SHUFFLE_BYTES&lt;/name&gt;
&lt;value&gt;2235&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_INPUT_RECORDS&lt;/name&gt;
&lt;value&gt;460&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;REDUCE_OUTPUT_RECORDS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;SPILLED_RECORDS&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;SHUFFLED_MAPS&lt;/name&gt;
&lt;value&gt;1&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;FAILED_SHUFFLE&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;MERGED_MAP_OUTPUTS&lt;/name&gt;
&lt;value&gt;1&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;GC_TIME_MILLIS&lt;/name&gt;
&lt;value&gt;26&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;CPU_MILLISECONDS&lt;/name&gt;
&lt;value&gt;860&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;PHYSICAL_MEMORY_BYTES&lt;/name&gt;
&lt;value&gt;107839488&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;VIRTUAL_MEMORY_BYTES&lt;/name&gt;
&lt;value&gt;1123147776&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;COMMITTED_HEAP_BYTES&lt;/name&gt;
&lt;value&gt;57475072&lt;/value&gt;
&lt;/counter&gt;
&lt;/taskAttemptCounterGroup&gt;
&lt;taskAttemptCounterGroup&gt;
&lt;counterGroupName&gt;Shuffle Errors&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;BAD_ID&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;CONNECTION&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;IO_ERROR&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_LENGTH&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_MAP&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;counter&gt;
&lt;name&gt;WRONG_REDUCE&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;/taskAttemptCounterGroup&gt;
&lt;taskAttemptCounterGroup&gt;
&lt;counterGroupName&gt;org.apache.hadoop.mapreduce.lib.output.FileOutputFormatCounter&lt;/counterGroupName&gt;
&lt;counter&gt;
&lt;name&gt;BYTES_WRITTEN&lt;/name&gt;
&lt;value&gt;0&lt;/value&gt;
&lt;/counter&gt;
&lt;/taskAttemptCounterGroup&gt;
&lt;/jobTaskAttemptCounters&gt;
</pre></div></div></div></div>
</div>
</div>
<div class="clear">
<hr/>
</div>
<div id="footer">
<div class="xright">
&#169; 2008-2021
Apache Software Foundation
- <a href="http://maven.apache.org/privacy-policy.html">Privacy Policy</a>.
Apache Maven, Maven, Apache, the Apache feather logo, and the Apache Maven project logos are trademarks of The Apache Software Foundation.
</div>
<div class="clear">
<hr/>
</div>
</div>
</body>
</html>