YARN-4103. RM WebServices missing scheme for appattempts logLinks. Contributed by Jonathan Eagles.
(cherry picked from commit 1b2e2ca9104dfc05e9aa7f93954ae2e00b3e62c4) Conflicts: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/RMAppBlock.java hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/RMWebServices.java hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/AppAttemptInfo.java
This commit is contained in:
parent
76cfdb1aba
commit
5002f885fc
|
@ -67,6 +67,9 @@ Release 2.7.2 - UNRELEASED
|
|||
YARN-4101. RM should print alert messages if Zookeeper and Resourcemanager
|
||||
gets connection issue. (Xuan Gong via jianhe)
|
||||
|
||||
YARN-4103. RM WebServices missing scheme for appattempts logLinks.
|
||||
(Jonathan Eagles via vvasudeb)
|
||||
|
||||
Release 2.7.1 - 2015-07-06
|
||||
|
||||
INCOMPATIBLE CHANGES
|
||||
|
|
|
@ -122,7 +122,8 @@ public class RMAppBlock extends AppBlock{
|
|||
continue;
|
||||
}
|
||||
AppAttemptInfo attemptInfo =
|
||||
new AppAttemptInfo(rmAppAttempt, rmApp.getUser());
|
||||
new AppAttemptInfo(rmAppAttempt, rmApp.getUser(),
|
||||
WebAppUtils.getHttpSchemePrefix(conf));
|
||||
String nodeLink = attemptInfo.getNodeHttpAddress();
|
||||
if (nodeLink != null) {
|
||||
nodeLink = WebAppUtils.getHttpSchemePrefix(conf) + nodeLink;
|
||||
|
|
|
@ -629,7 +629,8 @@ public class RMWebServices {
|
|||
@GET
|
||||
@Path("/apps/{appid}/appattempts")
|
||||
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
|
||||
public AppAttemptsInfo getAppAttempts(@PathParam("appid") String appId) {
|
||||
public AppAttemptsInfo getAppAttempts(@Context HttpServletRequest hsr,
|
||||
@PathParam("appid") String appId) {
|
||||
|
||||
init();
|
||||
if (appId == null || appId.isEmpty()) {
|
||||
|
@ -647,7 +648,8 @@ public class RMWebServices {
|
|||
|
||||
AppAttemptsInfo appAttemptsInfo = new AppAttemptsInfo();
|
||||
for (RMAppAttempt attempt : app.getAppAttempts().values()) {
|
||||
AppAttemptInfo attemptInfo = new AppAttemptInfo(attempt, app.getUser());
|
||||
AppAttemptInfo attemptInfo = new AppAttemptInfo(attempt, app.getUser(),
|
||||
hsr.getScheme() + "://");
|
||||
appAttemptsInfo.add(attemptInfo);
|
||||
}
|
||||
|
||||
|
|
|
@ -40,7 +40,8 @@ public class AppAttemptInfo {
|
|||
public AppAttemptInfo() {
|
||||
}
|
||||
|
||||
public AppAttemptInfo(RMAppAttempt attempt, String user) {
|
||||
public AppAttemptInfo(RMAppAttempt attempt, String user,
|
||||
String schemePrefix) {
|
||||
this.startTime = 0;
|
||||
this.containerId = "";
|
||||
this.nodeHttpAddress = "";
|
||||
|
@ -54,9 +55,9 @@ public class AppAttemptInfo {
|
|||
this.containerId = masterContainer.getId().toString();
|
||||
this.nodeHttpAddress = masterContainer.getNodeHttpAddress();
|
||||
this.nodeId = masterContainer.getNodeId().toString();
|
||||
this.logsLink =
|
||||
WebAppUtils.getRunningLogURL("//" + masterContainer.getNodeHttpAddress(),
|
||||
ConverterUtils.toString(masterContainer.getId()), user);
|
||||
this.logsLink = WebAppUtils.getRunningLogURL(schemePrefix
|
||||
+ masterContainer.getNodeHttpAddress(),
|
||||
ConverterUtils.toString(masterContainer.getId()), user);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1621,7 +1621,7 @@ public class TestRMWebServicesApps extends JerseyTestBase {
|
|||
.getMasterContainer().getNodeHttpAddress(), nodeHttpAddress);
|
||||
WebServicesTestUtils.checkStringMatch("nodeId", appAttempt
|
||||
.getMasterContainer().getNodeId().toString(), nodeId);
|
||||
assertTrue("logsLink doesn't match", logsLink.startsWith("//"));
|
||||
assertTrue("logsLink doesn't match ", logsLink.startsWith("http://"));
|
||||
assertTrue(
|
||||
"logsLink doesn't contain user info", logsLink.endsWith("/"
|
||||
+ user));
|
||||
|
|
Loading…
Reference in New Issue