AMBARI-7457. Slider View: Multiple Slider App summary page changes (alexantonenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/2696c40b Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/2696c40b Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/2696c40b Branch: refs/heads/branch-alerts-dev Commit: 2696c40ba42c9386b564209c0e06a3b22dd61fc0 Parents: 35075e0 Author: Alex Antonenko <[email protected]> Authored: Tue Sep 23 22:29:03 2014 +0300 Committer: Alex Antonenko <[email protected]> Committed: Tue Sep 23 22:29:03 2014 +0300 ---------------------------------------------------------------------- .../main/resources/ui/app/models/slider_app.js | 7 ++ .../resources/ui/app/styles/application.less | 9 ++- .../ui/app/templates/slider_app/summary.hbs | 84 ++++++++++++-------- .../src/main/resources/ui/app/translations.js | 7 +- 4 files changed, 68 insertions(+), 39 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/2696c40b/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js ---------------------------------------------------------------------- diff --git a/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js b/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js index aee5fa6..332de92 100644 --- a/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js +++ b/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js @@ -115,6 +115,13 @@ App.SliderApp = DS.Model.extend({ hiddenCategories: ['yarn-site', 'global'], /** + * @type {boolean} + */ + doNotShowComponentsAndAlerts: function(){ + return this.get('status') == "FROZEN" || this.get('status') == "FAILED"; + }.property('status', 'components', 'alerts'), + + /** * Display metrics only for running apps * @type {boolean} */ http://git-wip-us.apache.org/repos/asf/ambari/blob/2696c40b/contrib/views/slider/src/main/resources/ui/app/styles/application.less ---------------------------------------------------------------------- diff --git a/contrib/views/slider/src/main/resources/ui/app/styles/application.less b/contrib/views/slider/src/main/resources/ui/app/styles/application.less index c0ee347..854062f 100644 --- a/contrib/views/slider/src/main/resources/ui/app/styles/application.less +++ b/contrib/views/slider/src/main/resources/ui/app/styles/application.less @@ -624,6 +624,10 @@ select { .icon-warning-sign { color: #ff0000; } + .panel-body{ + max-height: 400px; + overflow-x: auto; + } } .panel-link { margin-top: -5px; @@ -771,9 +775,6 @@ select { .row-fluid [class*="span"] { min-height: 0px; } - .status-icon { - padding-top: 7px; - } .date-time { color: #999; font-style: italic; @@ -783,6 +784,8 @@ select { .message { font-size: 12px; color: #777; + word-break: break-all; + padding-right: 15px; } .serviceLink { padding-left: 7px; http://git-wip-us.apache.org/repos/asf/ambari/blob/2696c40b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs ---------------------------------------------------------------------- diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs index 655f19f..b5154c0 100644 --- a/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs +++ b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs @@ -31,6 +31,10 @@ <td>{{controller.appType}}</td> </tr> <tr> + <td>{{t common.yarn.app.id}}</td> + <td>{{controller.model.yarnId}}</td> + </tr> + <tr> <td>{{t common.started}}</td> <td>{{formatWordBreak controller.model.started}}</td> </tr> @@ -53,27 +57,9 @@ {{/bs-panel}} </div> <div class="col-md-6"> - {{#bs-panel heading="Components" class="panel-components"}} - <table class="table no-borders table-condensed"> - <tbody> - {{#each controller.model.components}} - <tr> - <td><span {{bind-attr class="isRunning:icon-ok-sign:icon-warning-sign :status"}}></span> {{componentName}}</td> - <td> - {{#if url}} - <a {{bind-attr href="url"}} target="_blank">{{host}}</a> - {{else}} - {{host}} - {{/if}} - </td> - </tr> - {{/each}} - </tbody> - </table> - {{/bs-panel}} <div class="panel panel-default panel-alerts"> <div class="panel-heading"> - {{t common.alerts}} + {{t common.status}} <div class="btn-group pull-right panel-link"> {{#if App.nagiosHost}} <a class="btn btn-default btn-sm" target="_blank" rel="tooltip" @@ -86,27 +72,57 @@ </div> <div class="app-alerts"> <ul> - {{#each controller.model.alerts}} - {{#view view.AlertView contentBinding="this"}} - <div class="container-fluid"> - <div class="row"> - <div class="col-md-1 status-icon"> - <i {{bind-attr class="iconClass :icon-large"}}></i> - </div> - <div class="col-md-11"> - <div class="row"> - <div class="col-md-7 title">{{title}}</div> - <div {{bs-bind-tooltip view.tooltip}} class="col-md-5 date-time">{{timeSinceAlert}}</div> + {{#if controller.model.doNotShowComponentsAndAlerts}} + <li> + <div class="container-fluid">{{t sliderApp.alerts.no.status}}</div> + </li> + {{else}} + {{#each controller.model.alerts}} + {{#view view.AlertView contentBinding="this"}} + <div class="container-fluid"> + <div class="row"> + <div class="col-md-1 status-icon"> + <i {{bind-attr class="iconClass :icon-small"}}></i> + </div> + <div class="col-md-11"> + <div class="row"> + <div class="col-md-7 title">{{title}}</div> + <div class="message">{{message}}</div> + </div> + </div> - <div class="message">{{message}}</div> </div> </div> - </div> - {{/view}} - {{/each}} + {{/view}} + {{/each}} + {{/if}} </ul> </div> </div> + {{#bs-panel heading="Components" class="panel-components"}} + <table class="table no-borders table-condensed"> + <tbody> + {{#if controller.model.doNotShowComponentsAndAlerts}} + <tr> + <td>{{t sliderApp.summary.no.components}}</td> + </tr> + {{else}} + {{#each controller.model.components}} + <tr> + <td><span {{bind-attr class="isRunning:icon-ok-sign:icon-warning-sign :status"}}></span> {{componentName}}</td> + <td> + {{#if url}} + <a {{bind-attr href="url"}} target="_blank">{{host}}</a> + {{else}} + {{host}} + {{/if}} + </td> + </tr> + {{/each}} + {{/if}} + </tbody> + </table> + {{/bs-panel}} </div> </div> {{#if controller.model.showMetrics}} http://git-wip-us.apache.org/repos/asf/ambari/blob/2696c40b/contrib/views/slider/src/main/resources/ui/app/translations.js ---------------------------------------------------------------------- diff --git a/contrib/views/slider/src/main/resources/ui/app/translations.js b/contrib/views/slider/src/main/resources/ui/app/translations.js index 3e5f048..c43f4f1 100644 --- a/contrib/views/slider/src/main/resources/ui/app/translations.js +++ b/contrib/views/slider/src/main/resources/ui/app/translations.js @@ -48,11 +48,12 @@ Em.I18n.translations = { 'finished': 'Finished', 'diagnostics': 'Diagnostics', 'description': 'Description', - 'alerts': 'Alerts', + 'status': 'Status', 'key': 'Key', 'remove': 'Remove', 'send': 'Send', - 'error': 'Error' + 'error': 'Error', + 'yarn.app.id': 'YARN Application ID' }, 'error.config_is_empty': 'Config <strong>{0}</strong> should not be empty', @@ -83,7 +84,9 @@ Em.I18n.translations = { 'sliderApp.summary.go_to_nagios': 'Go to Nagios', 'sliderApp.summary.go_to_ganglia': 'Go to Ganglia', + 'sliderApp.summary.no.components': 'No components are currently running', + 'sliderApp.alerts.no.status': 'No component statuses are currently available', 'sliderApp.alerts.OK.timePrefixShort': 'OK', 'sliderApp.alerts.WARN.timePrefixShort': 'WARN', 'sliderApp.alerts.CRIT.timePrefixShort': 'CRIT',
