blob: d7d832a2e0c9eefd9ddf3a210a20c78545bd2b1d [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_292) on Tue Jun 15 06:10:04 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LogAggregationFileController (Apache Hadoop YARN Common 3.3.1 API)</title>
<meta name="date" content="2021-06-15">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="LogAggregationFileController (Apache Hadoop YARN Common 3.3.1 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":6,"i6":10,"i7":10,"i8":6,"i9":6,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":6,"i18":6,"i19":10,"i20":6,"i21":6,"i22":6,"i23":6,"i24":10,"i25":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/LogAggregationFileController.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationDFSException.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileControllerContext.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html" target="_top">Frames</a></li>
<li><a href="LogAggregationFileController.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.yarn.logaggregation.filecontroller</div>
<h2 title="Class LogAggregationFileController" class="title">Class LogAggregationFileController</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.yarn.logaggregation.filecontroller.LogAggregationFileController</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/ifile/LogAggregationIndexedFileController.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller.ifile">LogAggregationIndexedFileController</a>, <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/tfile/LogAggregationTFileController.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller.tfile">LogAggregationTFileController</a></dd>
</dl>
<hr>
<br>
<pre>@InterfaceAudience.Public
@InterfaceStability.Unstable
public abstract class <span class="typeNameLabel">LogAggregationFileController</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">Base class to implement Log Aggregation File Controller.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static org.apache.hadoop.fs.permission.FsPermission</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#APP_DIR_PERMISSIONS">APP_DIR_PERMISSIONS</a></span></code>
<div class="block">Permissions for the Application directory.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static org.apache.hadoop.fs.permission.FsPermission</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#APP_LOG_FILE_UMASK">APP_LOG_FILE_UMASK</a></span></code>
<div class="block">Umask for the log file.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.conf.Configuration</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#conf">conf</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#fileControllerName">fileControllerName</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#fsSupportsChmod">fsSupportsChmod</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#remoteRootLogDir">remoteRootLogDir</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#remoteRootLogDirSuffix">remoteRootLogDirSuffix</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#retentionSize">retentionSize</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static org.apache.hadoop.fs.permission.FsPermission</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#TLDIR_PERMISSIONS">TLDIR_PERMISSIONS</a></span></code>
<div class="block">Permissions for the top level directory under which app directories will be
created.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#LogAggregationFileController--">LogAggregationFileController</a></span>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#aggregatedLogSuffix-java.lang.String-">aggregatedLogSuffix</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>
<div class="block">Create the aggregated log suffix.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#belongsToAppAttempt-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-java.lang.String-">belongsToAppAttempt</a></span>(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;appAttemptId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;containerIdStr)</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#checkExists-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.permission.FsPermission-">checkExists</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
org.apache.hadoop.fs.Path&nbsp;path,
org.apache.hadoop.fs.permission.FsPermission&nbsp;fsPerm)</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#cleanOldLogs-org.apache.hadoop.fs.Path-org.apache.hadoop.yarn.api.records.NodeId-org.apache.hadoop.security.UserGroupInformation-">cleanOldLogs</a></span>(org.apache.hadoop.fs.Path&nbsp;remoteNodeLogFileForApp,
org.apache.hadoop.yarn.api.records.NodeId&nbsp;nodeId,
org.apache.hadoop.security.UserGroupInformation&nbsp;userUgi)</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#closePrintStream-java.io.OutputStream-">closePrintStream</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;out)</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#closeWriter--">closeWriter</a></span>()</code>
<div class="block">Close the writer.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#createAppDir-java.lang.String-org.apache.hadoop.yarn.api.records.ApplicationId-org.apache.hadoop.security.UserGroupInformation-">createAppDir</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
org.apache.hadoop.security.UserGroupInformation&nbsp;userUgi)</code>
<div class="block">Create remote Application directory for log aggregation.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#createDir-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.permission.FsPermission-">createDir</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
org.apache.hadoop.fs.Path&nbsp;path,
org.apache.hadoop.fs.permission.FsPermission&nbsp;fsPerm)</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.apache.hadoop.yarn.api.records.ApplicationAccessType,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#getApplicationAcls-org.apache.hadoop.fs.Path-org.apache.hadoop.yarn.api.records.ApplicationId-">getApplicationAcls</a></span>(org.apache.hadoop.fs.Path&nbsp;aggregatedLogPath,
org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId)</code>
<div class="block">Returns ACLs for the application.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#getApplicationOwner-org.apache.hadoop.fs.Path-org.apache.hadoop.yarn.api.records.ApplicationId-">getApplicationOwner</a></span>(org.apache.hadoop.fs.Path&nbsp;aggregatedLogPath,
org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId)</code>
<div class="block">Returns the owner of the application.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.fs.FileSystem</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#getFileSystem-org.apache.hadoop.conf.Configuration-">getFileSystem</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#getOlderRemoteAppLogDir-org.apache.hadoop.yarn.api.records.ApplicationId-java.lang.String-">getOlderRemoteAppLogDir</a></span>(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appOwner)</code>
<div class="block">Get the older remote application directory for log aggregation.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#getRemoteAppLogDir-org.apache.hadoop.yarn.api.records.ApplicationId-java.lang.String-">getRemoteAppLogDir</a></span>(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appOwner)</code>
<div class="block">Get the remote application directory for log aggregation.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#getRemoteNodeLogFileForApp-org.apache.hadoop.yarn.api.records.ApplicationId-java.lang.String-org.apache.hadoop.yarn.api.records.NodeId-">getRemoteNodeLogFileForApp</a></span>(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
org.apache.hadoop.yarn.api.records.NodeId&nbsp;nodeId)</code>
<div class="block">Get the remote aggregated log path.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#getRemoteRootLogDir--">getRemoteRootLogDir</a></span>()</code>
<div class="block">Get the remote root log directory.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#getRemoteRootLogDirSuffix--">getRemoteRootLogDirSuffix</a></span>()</code>
<div class="block">Get the log aggregation directory suffix.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#initialize-org.apache.hadoop.conf.Configuration-java.lang.String-">initialize</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;controllerName)</code>
<div class="block">Initialize the log file controller.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#initializeWriter-org.apache.hadoop.yarn.logaggregation.filecontroller.LogAggregationFileControllerContext-">initializeWriter</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileControllerContext.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller">LogAggregationFileControllerContext</a>&nbsp;context)</code>
<div class="block">Initialize the writer.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#initInternal-org.apache.hadoop.conf.Configuration-">initInternal</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
<div class="block">Derived classes initialize themselves using this method.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#isFsSupportsChmod--">isFsSupportsChmod</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#postWrite-org.apache.hadoop.yarn.logaggregation.filecontroller.LogAggregationFileControllerContext-">postWrite</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileControllerContext.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller">LogAggregationFileControllerContext</a>&nbsp;record)</code>
<div class="block">Operations needed after write the log content.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#readAggregatedLogs-org.apache.hadoop.yarn.logaggregation.ContainerLogsRequest-java.io.OutputStream-">readAggregatedLogs</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogsRequest.html" title="class in org.apache.hadoop.yarn.logaggregation">ContainerLogsRequest</a>&nbsp;logRequest,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>
<div class="block">Output container log.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogMeta.html" title="class in org.apache.hadoop.yarn.logaggregation">ContainerLogMeta</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#readAggregatedLogsMeta-org.apache.hadoop.yarn.logaggregation.ContainerLogsRequest-">readAggregatedLogsMeta</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogsRequest.html" title="class in org.apache.hadoop.yarn.logaggregation">ContainerLogsRequest</a>&nbsp;logRequest)</code>
<div class="block">Return a list of <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogMeta.html" title="class in org.apache.hadoop.yarn.logaggregation"><code>ContainerLogMeta</code></a> for an application
from Remote FileSystem.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#renderAggregatedLogsBlock-org.apache.hadoop.yarn.webapp.view.HtmlBlock.Block-org.apache.hadoop.yarn.webapp.View.ViewContext-">renderAggregatedLogsBlock</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/webapp/view/HtmlBlock.Block.html" title="class in org.apache.hadoop.yarn.webapp.view">HtmlBlock.Block</a>&nbsp;html,
<a href="../../../../../../org/apache/hadoop/yarn/webapp/View.ViewContext.html" title="class in org.apache.hadoop.yarn.webapp">View.ViewContext</a>&nbsp;context)</code>
<div class="block">Render Aggregated Logs block.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#verifyAndCreateRemoteLogDir--">verifyAndCreateRemoteLogDir</a></span>()</code>
<div class="block">Verify and create the remote log directory.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html#write-org.apache.hadoop.yarn.logaggregation.AggregatedLogFormat.LogKey-org.apache.hadoop.yarn.logaggregation.AggregatedLogFormat.LogValue-">write</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/AggregatedLogFormat.LogKey.html" title="class in org.apache.hadoop.yarn.logaggregation">AggregatedLogFormat.LogKey</a>&nbsp;logKey,
<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/AggregatedLogFormat.LogValue.html" title="class in org.apache.hadoop.yarn.logaggregation">AggregatedLogFormat.LogValue</a>&nbsp;logValue)</code>
<div class="block">Write the log content.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="TLDIR_PERMISSIONS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TLDIR_PERMISSIONS</h4>
<pre>protected static final&nbsp;org.apache.hadoop.fs.permission.FsPermission TLDIR_PERMISSIONS</pre>
<div class="block">Permissions for the top level directory under which app directories will be
created.</div>
</li>
</ul>
<a name="APP_DIR_PERMISSIONS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>APP_DIR_PERMISSIONS</h4>
<pre>protected static final&nbsp;org.apache.hadoop.fs.permission.FsPermission APP_DIR_PERMISSIONS</pre>
<div class="block">Permissions for the Application directory.</div>
</li>
</ul>
<a name="APP_LOG_FILE_UMASK">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>APP_LOG_FILE_UMASK</h4>
<pre>protected static final&nbsp;org.apache.hadoop.fs.permission.FsPermission APP_LOG_FILE_UMASK</pre>
<div class="block">Umask for the log file.</div>
</li>
</ul>
<a name="conf">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>conf</h4>
<pre>protected&nbsp;org.apache.hadoop.conf.Configuration conf</pre>
</li>
</ul>
<a name="remoteRootLogDir">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteRootLogDir</h4>
<pre>protected&nbsp;org.apache.hadoop.fs.Path remoteRootLogDir</pre>
</li>
</ul>
<a name="remoteRootLogDirSuffix">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteRootLogDirSuffix</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> remoteRootLogDirSuffix</pre>
</li>
</ul>
<a name="retentionSize">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>retentionSize</h4>
<pre>protected&nbsp;int retentionSize</pre>
</li>
</ul>
<a name="fileControllerName">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fileControllerName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> fileControllerName</pre>
</li>
</ul>
<a name="fsSupportsChmod">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>fsSupportsChmod</h4>
<pre>protected&nbsp;boolean fsSupportsChmod</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="LogAggregationFileController--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>LogAggregationFileController</h4>
<pre>public&nbsp;LogAggregationFileController()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="initialize-org.apache.hadoop.conf.Configuration-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>public&nbsp;void&nbsp;initialize(org.apache.hadoop.conf.Configuration&nbsp;conf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;controllerName)</pre>
<div class="block">Initialize the log file controller.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>conf</code> - the Configuration</dd>
<dd><code>controllerName</code> - the log controller class name</dd>
</dl>
</li>
</ul>
<a name="initInternal-org.apache.hadoop.conf.Configuration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;initInternal(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
<div class="block">Derived classes initialize themselves using this method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>conf</code> - the Configuration</dd>
</dl>
</li>
</ul>
<a name="getRemoteRootLogDir--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRemoteRootLogDir</h4>
<pre>public&nbsp;org.apache.hadoop.fs.Path&nbsp;getRemoteRootLogDir()</pre>
<div class="block">Get the remote root log directory.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the remote root log directory path</dd>
</dl>
</li>
</ul>
<a name="getRemoteRootLogDirSuffix--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRemoteRootLogDirSuffix</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getRemoteRootLogDirSuffix()</pre>
<div class="block">Get the log aggregation directory suffix.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the log aggregation directory suffix</dd>
</dl>
</li>
</ul>
<a name="initializeWriter-org.apache.hadoop.yarn.logaggregation.filecontroller.LogAggregationFileControllerContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initializeWriter</h4>
<pre>public abstract&nbsp;void&nbsp;initializeWriter(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileControllerContext.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller">LogAggregationFileControllerContext</a>&nbsp;context)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Initialize the writer.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>context</code> - the <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileControllerContext.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller"><code>LogAggregationFileControllerContext</code></a></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if fails to initialize the writer</dd>
</dl>
</li>
</ul>
<a name="closeWriter--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closeWriter</h4>
<pre>public abstract&nbsp;void&nbsp;closeWriter()
throws <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationDFSException.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller">LogAggregationDFSException</a></pre>
<div class="block">Close the writer.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationDFSException.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller">LogAggregationDFSException</a></code> - if the closing of the writer fails
(for example due to HDFS quota being exceeded)</dd>
</dl>
</li>
</ul>
<a name="write-org.apache.hadoop.yarn.logaggregation.AggregatedLogFormat.LogKey-org.apache.hadoop.yarn.logaggregation.AggregatedLogFormat.LogValue-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>write</h4>
<pre>public abstract&nbsp;void&nbsp;write(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/AggregatedLogFormat.LogKey.html" title="class in org.apache.hadoop.yarn.logaggregation">AggregatedLogFormat.LogKey</a>&nbsp;logKey,
<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/AggregatedLogFormat.LogValue.html" title="class in org.apache.hadoop.yarn.logaggregation">AggregatedLogFormat.LogValue</a>&nbsp;logValue)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Write the log content.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>logKey</code> - the log key</dd>
<dd><code>logValue</code> - the log content</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if fails to write the logs</dd>
</dl>
</li>
</ul>
<a name="postWrite-org.apache.hadoop.yarn.logaggregation.filecontroller.LogAggregationFileControllerContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>postWrite</h4>
<pre>public abstract&nbsp;void&nbsp;postWrite(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileControllerContext.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller">LogAggregationFileControllerContext</a>&nbsp;record)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Operations needed after write the log content.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>record</code> - the <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileControllerContext.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller"><code>LogAggregationFileControllerContext</code></a></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code> - if anything fails</dd>
</dl>
</li>
</ul>
<a name="closePrintStream-java.io.OutputStream-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closePrintStream</h4>
<pre>protected&nbsp;void&nbsp;closePrintStream(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;out)</pre>
</li>
</ul>
<a name="readAggregatedLogs-org.apache.hadoop.yarn.logaggregation.ContainerLogsRequest-java.io.OutputStream-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readAggregatedLogs</h4>
<pre>public abstract&nbsp;boolean&nbsp;readAggregatedLogs(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogsRequest.html" title="class in org.apache.hadoop.yarn.logaggregation">ContainerLogsRequest</a>&nbsp;logRequest,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Output container log.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>logRequest</code> - <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogsRequest.html" title="class in org.apache.hadoop.yarn.logaggregation"><code>ContainerLogsRequest</code></a></dd>
<dd><code>os</code> - the output stream</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if we can read the aggregated logs successfully</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if we can not access the log file.</dd>
</dl>
</li>
</ul>
<a name="readAggregatedLogsMeta-org.apache.hadoop.yarn.logaggregation.ContainerLogsRequest-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readAggregatedLogsMeta</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogMeta.html" title="class in org.apache.hadoop.yarn.logaggregation">ContainerLogMeta</a>&gt;&nbsp;readAggregatedLogsMeta(<a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogsRequest.html" title="class in org.apache.hadoop.yarn.logaggregation">ContainerLogsRequest</a>&nbsp;logRequest)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Return a list of <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogMeta.html" title="class in org.apache.hadoop.yarn.logaggregation"><code>ContainerLogMeta</code></a> for an application
from Remote FileSystem.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>logRequest</code> - <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogsRequest.html" title="class in org.apache.hadoop.yarn.logaggregation"><code>ContainerLogsRequest</code></a></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of <a href="../../../../../../org/apache/hadoop/yarn/logaggregation/ContainerLogMeta.html" title="class in org.apache.hadoop.yarn.logaggregation"><code>ContainerLogMeta</code></a></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if there is no available log file</dd>
</dl>
</li>
</ul>
<a name="renderAggregatedLogsBlock-org.apache.hadoop.yarn.webapp.view.HtmlBlock.Block-org.apache.hadoop.yarn.webapp.View.ViewContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>renderAggregatedLogsBlock</h4>
<pre>public abstract&nbsp;void&nbsp;renderAggregatedLogsBlock(<a href="../../../../../../org/apache/hadoop/yarn/webapp/view/HtmlBlock.Block.html" title="class in org.apache.hadoop.yarn.webapp.view">HtmlBlock.Block</a>&nbsp;html,
<a href="../../../../../../org/apache/hadoop/yarn/webapp/View.ViewContext.html" title="class in org.apache.hadoop.yarn.webapp">View.ViewContext</a>&nbsp;context)</pre>
<div class="block">Render Aggregated Logs block.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>html</code> - the html</dd>
<dd><code>context</code> - the ViewContext</dd>
</dl>
</li>
</ul>
<a name="getApplicationOwner-org.apache.hadoop.fs.Path-org.apache.hadoop.yarn.api.records.ApplicationId-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getApplicationOwner</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getApplicationOwner(org.apache.hadoop.fs.Path&nbsp;aggregatedLogPath,
org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Returns the owner of the application.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>aggregatedLogPath</code> - the aggregatedLog path</dd>
<dd><code>appId</code> - the ApplicationId</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the application owner</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if we can not get the application owner</dd>
</dl>
</li>
</ul>
<a name="getApplicationAcls-org.apache.hadoop.fs.Path-org.apache.hadoop.yarn.api.records.ApplicationId-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getApplicationAcls</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.apache.hadoop.yarn.api.records.ApplicationAccessType,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getApplicationAcls(org.apache.hadoop.fs.Path&nbsp;aggregatedLogPath,
org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Returns ACLs for the application. An empty map is returned if no ACLs are
found.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>aggregatedLogPath</code> - the aggregatedLog path.</dd>
<dd><code>appId</code> - the ApplicationId</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a map of the Application ACLs.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if we can not get the application acls</dd>
</dl>
</li>
</ul>
<a name="verifyAndCreateRemoteLogDir--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>verifyAndCreateRemoteLogDir</h4>
<pre>public&nbsp;void&nbsp;verifyAndCreateRemoteLogDir()</pre>
<div class="block">Verify and create the remote log directory.</div>
</li>
</ul>
<a name="createAppDir-java.lang.String-org.apache.hadoop.yarn.api.records.ApplicationId-org.apache.hadoop.security.UserGroupInformation-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createAppDir</h4>
<pre>public&nbsp;void&nbsp;createAppDir(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
org.apache.hadoop.security.UserGroupInformation&nbsp;userUgi)</pre>
<div class="block">Create remote Application directory for log aggregation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>user</code> - the user</dd>
<dd><code>appId</code> - the application ID</dd>
<dd><code>userUgi</code> - the UGI</dd>
</dl>
</li>
</ul>
<a name="getFileSystem-org.apache.hadoop.conf.Configuration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileSystem</h4>
<pre>protected&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;getFileSystem(org.apache.hadoop.conf.Configuration&nbsp;conf)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="createDir-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.permission.FsPermission-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createDir</h4>
<pre>protected&nbsp;void&nbsp;createDir(org.apache.hadoop.fs.FileSystem&nbsp;fs,
org.apache.hadoop.fs.Path&nbsp;path,
org.apache.hadoop.fs.permission.FsPermission&nbsp;fsPerm)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="checkExists-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.permission.FsPermission-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkExists</h4>
<pre>protected&nbsp;boolean&nbsp;checkExists(org.apache.hadoop.fs.FileSystem&nbsp;fs,
org.apache.hadoop.fs.Path&nbsp;path,
org.apache.hadoop.fs.permission.FsPermission&nbsp;fsPerm)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getRemoteNodeLogFileForApp-org.apache.hadoop.yarn.api.records.ApplicationId-java.lang.String-org.apache.hadoop.yarn.api.records.NodeId-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRemoteNodeLogFileForApp</h4>
<pre>public&nbsp;org.apache.hadoop.fs.Path&nbsp;getRemoteNodeLogFileForApp(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
org.apache.hadoop.yarn.api.records.NodeId&nbsp;nodeId)</pre>
<div class="block">Get the remote aggregated log path.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>appId</code> - the ApplicationId</dd>
<dd><code>user</code> - the Application Owner</dd>
<dd><code>nodeId</code> - the NodeManager Id</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the remote aggregated log path</dd>
</dl>
</li>
</ul>
<a name="getRemoteAppLogDir-org.apache.hadoop.yarn.api.records.ApplicationId-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRemoteAppLogDir</h4>
<pre>public&nbsp;org.apache.hadoop.fs.Path&nbsp;getRemoteAppLogDir(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appOwner)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get the remote application directory for log aggregation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>appId</code> - the Application ID</dd>
<dd><code>appOwner</code> - the Application Owner</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the remote application directory</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if can not find the remote application directory</dd>
</dl>
</li>
</ul>
<a name="getOlderRemoteAppLogDir-org.apache.hadoop.yarn.api.records.ApplicationId-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOlderRemoteAppLogDir</h4>
<pre>public&nbsp;org.apache.hadoop.fs.Path&nbsp;getOlderRemoteAppLogDir(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appOwner)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get the older remote application directory for log aggregation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>appId</code> - the Application ID</dd>
<dd><code>appOwner</code> - the Application Owner</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the older remote application directory</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if can not find the remote application directory</dd>
</dl>
</li>
</ul>
<a name="cleanOldLogs-org.apache.hadoop.fs.Path-org.apache.hadoop.yarn.api.records.NodeId-org.apache.hadoop.security.UserGroupInformation-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cleanOldLogs</h4>
<pre>protected&nbsp;void&nbsp;cleanOldLogs(org.apache.hadoop.fs.Path&nbsp;remoteNodeLogFileForApp,
org.apache.hadoop.yarn.api.records.NodeId&nbsp;nodeId,
org.apache.hadoop.security.UserGroupInformation&nbsp;userUgi)</pre>
</li>
</ul>
<a name="aggregatedLogSuffix-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>aggregatedLogSuffix</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;aggregatedLogSuffix(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</pre>
<div class="block">Create the aggregated log suffix. The LogAggregationFileController
should call this to get the suffix and append the suffix to the end
of each log. This would keep the aggregated log format consistent.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fileName</code> - the File Name</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the aggregated log suffix String</dd>
</dl>
</li>
</ul>
<a name="isFsSupportsChmod--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFsSupportsChmod</h4>
<pre>public&nbsp;boolean&nbsp;isFsSupportsChmod()</pre>
</li>
</ul>
<a name="belongsToAppAttempt-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>belongsToAppAttempt</h4>
<pre>protected&nbsp;boolean&nbsp;belongsToAppAttempt(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;appAttemptId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;containerIdStr)</pre>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/LogAggregationFileController.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationDFSException.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileControllerContext.html" title="class in org.apache.hadoop.yarn.logaggregation.filecontroller"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/yarn/logaggregation/filecontroller/LogAggregationFileController.html" target="_top">Frames</a></li>
<li><a href="LogAggregationFileController.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2008&#x2013;2021 <a href="https://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>