This is an automated email from the ASF dual-hosted git repository.
rohithsharmaks pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/trunk by this push:
new 84bb980 YARN-7761. [UI2] Clicking 'master container log' or 'Link'
next to 'log' under application's appAttempt goes to Old UI's Log link.
Contributed by Akhil PB.
84bb980 is described below
commit 84bb9808a2f56fcdfbfe496337033d9aa0cb583e
Author: Rohith Sharma K S <[email protected]>
AuthorDate: Fri Jan 25 14:00:19 2019 +0530
YARN-7761. [UI2] Clicking 'master container log' or 'Link' next to 'log'
under application's appAttempt goes to Old UI's Log link. Contributed by Akhil
PB.
---
.../src/main/webapp/app/components/timeline-view.js | 12 ++++++------
.../src/main/webapp/app/controllers/yarn-app/logs.js | 9 +++++++--
.../src/main/webapp/app/helpers/log-files-comma.js | 2 +-
.../src/main/webapp/app/initializers/loader.js | 4 +++-
.../src/main/webapp/app/models/yarn-app-attempt.js | 6 ++++++
.../src/main/webapp/app/models/yarn-container.js | 9 ++++++++-
.../src/main/webapp/app/models/yarn-timeline-container.js | 9 ++++++++-
.../src/main/webapp/app/routes/yarn-app/logs.js | 6 ++++++
.../src/main/webapp/app/routes/yarn-node-container.js | 8 +++++---
.../webapp/app/templates/components/app-attempt-table.hbs | 8 +++++---
.../main/webapp/app/templates/components/container-table.hbs | 8 +++++---
.../src/main/webapp/app/templates/yarn-app.hbs | 4 ++--
.../src/main/webapp/app/templates/yarn-apps/apps.hbs | 2 ++
.../src/main/webapp/app/templates/yarn-node/info.hbs | 4 +---
14 files changed, 65 insertions(+), 26 deletions(-)
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/components/timeline-view.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/components/timeline-view.js
index b4de94f..031dd41 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/components/timeline-view.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/components/timeline-view.js
@@ -408,9 +408,9 @@ export default Ember.Component.extend({
contentPath: 'logsLink',
cellComponentName: 'em-table-html-cell',
getCellContent: function(row) {
- var logUrl = self.checkHttpProtocol(row.get('logsLink'));
- if (logUrl) {
- return `<a href="${logUrl}" target="_blank">Link</a>`;
+ var containerLogUrl = row.get('appAttemptContainerLogsURL');
+ if (containerLogUrl) {
+ return `<a href="${containerLogUrl}">Link</a>`;
} else {
return 'N/A';
}
@@ -490,9 +490,9 @@ export default Ember.Component.extend({
contentPath: 'logUrl',
cellComponentName: 'em-table-html-cell',
getCellContent: function(row) {
- var url = self.checkHttpProtocol(row.get('logUrl'));
- if (url) {
- return `<a href="${url}" target="_blank">${url}</a>`;
+ var containerLogUrl = row.get('appAttemptContainerLogsURL');
+ if (containerLogUrl) {
+ return `<a href="${containerLogUrl}">Link</a>`;
} else {
return 'N/A';
}
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/controllers/yarn-app/logs.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/controllers/yarn-app/logs.js
index 8224011..e1a8ec8 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/controllers/yarn-app/logs.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/controllers/yarn-app/logs.js
@@ -20,8 +20,10 @@ import Ember from 'ember';
import Constants from 'yarn-ui/constants';
export default Ember.Controller.extend({
- queryParams: ["service"],
+ queryParams: ["service", "attempt", "containerid"],
service: undefined,
+ attempt: undefined,
+ containerid: undefined,
selectedAttemptId: "",
attemptContainerList: null,
@@ -40,7 +42,7 @@ export default Ember.Controller.extend({
},
actions: {
- showContainersForAttemptId(attemptId) {
+ showContainersForAttemptId(attemptId, containerId = "") {
this.set("selectedAttemptId", "");
if (attemptId) {
this.set("_isLoadingTopPanel", true);
@@ -75,6 +77,9 @@ export default Ember.Controller.extend({
}
this.set("attemptContainerList", containers);
this.initializeSelect(".js-fetch-logs-containers");
+ if (containerId) {
+ this.send("showLogFilesForContainerId", containerId);
+ }
})
.finally(() => {
this.set("_isLoadingTopPanel", false);
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/helpers/log-files-comma.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/helpers/log-files-comma.js
index 026cd7f..963fc14 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/helpers/log-files-comma.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/helpers/log-files-comma.js
@@ -47,7 +47,7 @@ export default Ember.Helper.helper(function(params,hash) {
nodeAddr + '/' + containerId + '/' + logFileName + '">' + logFileName +
'</a>';
if (i !== logFilesLen - 1) {
- html = html + ",";
+ html = html + ", ";
}
}
html = html + '</td>';
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js
index e695ea6..ad0132c 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js
@@ -113,7 +113,8 @@ function getClusterIdFromYARN(rmhost, application) {
function getNodeManagerPort(rmhost, application) {
var httpUrl = window.location.protocol + "//" +
(ENV.hosts.localBaseAddress ? ENV.hosts.localBaseAddress + '/' : '') +
rmhost
- + ":" + window.location.port +
"/conf?name=yarn.nodemanager.webapp.address";
+ + "/conf?name=yarn.nodemanager.webapp.address";
+
var port = "8042";
$.ajax({
type: 'GET',
@@ -158,6 +159,7 @@ function updateConfigs(application) {
ENV.clusterId = clusterIdFromYARN;
var nodeManagerPort = getNodeManagerPort(rmhost, application);
+ Ember.Logger.log("NodeMananger port: " + nodeManagerPort);
ENV.nodeManagerPort = nodeManagerPort;
if(!ENV.hosts.timelineWebAddress) {
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-app-attempt.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-app-attempt.js
index 6538f20..b89db46 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-app-attempt.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-app-attempt.js
@@ -147,4 +147,10 @@ export default DS.Model.extend({
return `#/yarn-node/${this.get("nodeId")}/${addr}/info/`;
}.property("nodeId", "nodeHttpAddress"),
+ appAttemptContainerLogsURL: function() {
+ const attemptId = this.get("id");
+ const containerId = this.get("appMasterContainerId");
+ const appId = Converter.attemptIdToAppId(attemptId);
+ return
`#/yarn-app/${appId}/logs?attempt=${attemptId}&containerid=${containerId}`;
+ }.property("id", "appMasterContainerId")
});
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-container.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-container.js
index f13c405..6a33e9a 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-container.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-container.js
@@ -66,5 +66,12 @@ export default DS.Model.extend({
masterNodeURL: function() {
var addr = encodeURIComponent(this.get("nodeHttpAddress"));
return `#/yarn-node/${this.get("nodeId")}/${addr}/info/`;
- }.property("nodeId", "nodeHttpAddress")
+ }.property("nodeId", "nodeHttpAddress"),
+
+ appAttemptContainerLogsURL: function() {
+ const containerId = this.get("id");
+ const attemptId = Converter.containerIdToAttemptId(containerId);
+ const appId = Converter.attemptIdToAppId(attemptId);
+ return
`#/yarn-app/${appId}/logs?attempt=${attemptId}&containerid=${containerId}`;
+ }.property("id")
});
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-timeline-container.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-timeline-container.js
index 104c1a9..1a97236 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-timeline-container.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/models/yarn-timeline-container.js
@@ -67,5 +67,12 @@ export default DS.Model.extend({
masterNodeURL: function() {
var addr = encodeURIComponent(this.get("nodeHttpAddress"));
return `#/yarn-node/${this.get("nodeId")}/${addr}/info/`;
- }.property("nodeId", "nodeHttpAddress")
+ }.property("nodeId", "nodeHttpAddress"),
+
+ appAttemptContainerLogsURL: function() {
+ const containerId = this.get("id");
+ const attemptId = Converter.containerIdToAttemptId(containerId);
+ const appId = Converter.attemptIdToAppId(attemptId);
+ return
`#/yarn-app/${appId}/logs?attempt=${attemptId}&containerid=${containerId}`;
+ }.property("id")
});
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/routes/yarn-app/logs.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/routes/yarn-app/logs.js
index 99e4cff..b73bc80 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/routes/yarn-app/logs.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/routes/yarn-app/logs.js
@@ -37,8 +37,14 @@ export default AbstractRoute.extend(AppAttemptMixin, {
activate() {
const controller = this.controllerFor("yarn-app.logs");
+ const { attempt, containerid } = this.paramsFor('yarn-app.logs');
controller.resetAfterRefresh();
controller.initializeSelect();
+ if (attempt) {
+ controller.send("showContainersForAttemptId", attempt, containerid);
+ } else {
+ controller.set("selectedAttemptId", "");
+ }
},
unloadAll() {
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/routes/yarn-node-container.js
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/routes/yarn-node-container.js
index 388918e..0060e2b 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/routes/yarn-node-container.js
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/routes/yarn-node-container.js
@@ -22,12 +22,14 @@ import AbstractRoute from './abstract';
export default AbstractRoute.extend({
model(param) {
+ let nodeAddress = decodeURIComponent(param.node_addr);
+ nodeAddress = nodeAddress.replace(/(^\w+:|^)\/\//, '');
// Get a specific container running on a specific node.
return Ember.RSVP.hash({
nodeContainer: this.store.queryRecord('yarn-node-container',
- { nodeHttpAddr: param.node_addr, containerId: param.container_id }),
- nmGpuInfo: this.store.findRecord('yarn-nm-gpu', param.node_addr,
{reload:true}),
- nodeInfo: { id: param.node_id, addr: param.node_addr, containerId:
param.container_id }
+ { nodeHttpAddr: nodeAddress, containerId: param.container_id }),
+ nmGpuInfo: this.store.findRecord('yarn-nm-gpu', nodeAddress,
{reload:true}),
+ nodeInfo: { id: param.node_id, addr: nodeAddress, containerId:
param.container_id }
});
},
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/components/app-attempt-table.hbs
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/components/app-attempt-table.hbs
index 06dd754..91c7eea 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/components/app-attempt-table.hbs
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/components/app-attempt-table.hbs
@@ -62,10 +62,12 @@
<td title="{{attempt.exposedPorts}}">{{attempt.exposedPorts}}</td>
</tr>
{{/if}}
- {{#if attempt.logsLink}}
+ {{#if attempt.appAttemptContainerLogsURL}}
<tr>
- <td>Log</td>
- <td><a href="{{prepend-protocol attempt.logsLink}}"
target="_blank">Link</a></td>
+ <td>Logs</td>
+ <td>
+ <a href="{{attempt.appAttemptContainerLogsURL}}">Link</a>
+ </td>
</tr>
{{/if}}
{{#if attempt.diagnosticsInfo}}
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/components/container-table.hbs
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/components/container-table.hbs
index 9bdabec..25d57c5 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/components/container-table.hbs
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/components/container-table.hbs
@@ -60,10 +60,12 @@
<td title="{{container.exposedPorts}}">{{container.exposedPorts}}</td>
</tr>
{{/if}}
- {{#if container.logUrl}}
+ {{#if container.appAttemptContainerLogsURL}}
<tr>
- <td>Log</td>
- <td><a href="{{prepend-protocol container.logUrl}}"
target="_blank">Link</a></td>
+ <td>Logs</td>
+ <td>
+ <a href="{{container.appAttemptContainerLogsURL}}">Link</a>
+ </td>
</tr>
{{/if}}
{{#if container.nodeHttpAddress}}
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-app.hbs
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-app.hbs
index 6e9bc08..c16a7a5 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-app.hbs
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-app.hbs
@@ -19,7 +19,7 @@
{{breadcrumb-bar breadcrumbs=breadcrumbs}}
{{#if actionResponse}}
- <div class="row">
+ <div class="alert-wrapper">
<div class="col-md-12">
<div class="alert alert-dismissible {{if (eq actionResponse.type
'error') 'alert-danger' 'alert-success'}}" role="alert">
<button class="close" data-dismiss="alert" aria-label="Close" {{action
"resetActionResponse"}}><span aria-hidden="true">×</span></button>
@@ -29,7 +29,7 @@
</div>
{{/if}}
-<div class="panel-group">
+<div class="panel-group col-md-12">
<div class="panel panel-default">
<div class="yarn-app-header">
<div class="flex">
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-apps/apps.hbs
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-apps/apps.hbs
index f740083..743e2bf 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-apps/apps.hbs
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-apps/apps.hbs
@@ -20,7 +20,9 @@
<h4 align="center">Loading...</h4>
{{else}}
{{#if model.apps}}
+ <div class="col-md-12">
{{em-table columns=columns rows=model.apps definition=tableDefinition}}
+ </div>
{{else}}
<h4 align="center">Could not find any applications from this cluster</h4>
{{/if}}
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-node/info.hbs
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-node/info.hbs
index a2c708e..59cbbf0 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-node/info.hbs
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/templates/yarn-node/info.hbs
@@ -129,9 +129,7 @@
<div class="col-lg-6 container-fluid">
<div class="panel panel-default">
<div class="panel-heading">
- <li>
- Resources - yarn.io/gpu
- </li>
+ Resources - yarn.io/gpu
</div>
<div class="container-fluid" id="gpu-donut-chart">
{{donut-chart data=model.rmNode.getGpuDataForDonutChart
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]