Example #1
0
 setYAxisFormatter: function () {
   var method,
     formatterMap = {
       '%': 'PercentageFormatter',
       '/s': 'CreateRateFormatter',
       'B': 'BytesFormatter',
       'ms': 'TimeElapsedFormatter'
     },
     methodName = formatterMap[this.get('displayUnit')];
   if (methodName) {
     method = (methodName == 'CreateRateFormatter') ?
       App.ChartLinearTimeView.CreateRateFormatter('', App.ChartLinearTimeView.DefaultFormatter) :
       App.ChartLinearTimeView[methodName];
     this.set('yAxisFormatter', method);
   }
 },
 yAxisFormatter: function(y) {
   return App.ChartLinearTimeView.DefaultFormatter(y);
 },
 * @extends Ember.Object
 * @extends Ember.View
 */
App.ChartServiceMetricsHBASE_HlogSplitTime = App.ChartLinearTimeView.extend({
  id: "service-metrics-hbase-hlog-split-time",
  title: Em.I18n.t('services.service.info.metrics.hbase.hlogSplitTime'),
  yAxisFormatter: App.ChartLinearTimeView.TimeElapsedFormatter,

  ajaxIndex: 'service.metrics.hbase.hlog_split_time',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    if (jsonData && jsonData.metrics && jsonData.metrics.hbase && jsonData.metrics.hbase.master) {
      for ( var name in jsonData.metrics.hbase.master) {
        var displayName;
        var seriesData = jsonData.metrics.hbase.master[name];
        switch (name) {
          case "splitTime_avg_time":
            displayName = Em.I18n.t('services.service.info.metrics.hbase.hlogSplitTime.displayNames.splitTime');
            break;
          default:
            break;
        }
        if (seriesData) {
          seriesArray.push(this.transformData(seriesData, displayName));
        }
      }
    }
    return seriesArray;
  }
});
Example #4
0
 * @extends Ember.Object
 * @extends Ember.View
 */
App.ChartServiceMetricsFlume_OutgoingMMA = App.ChartLinearTimeView.extend({
  id: "service-metrics-flume-outgoing_mma",
  renderer: 'line',
  title: Em.I18n.t('services.service.info.metrics.flume.outgoing.mma'),

  ajaxIndex: 'service.metrics.flume.outgoing_event_take_success_count.mma',
  displayUnit: '/s',

  seriesTemplate: {
    path: 'metrics.flume.flume.CHANNEL.EventTakeSuccessCount.rate',
    displayName: function (name) {
      return Em.I18n.t('services.service.info.metrics.flume.outgoing_mma').format(name);
    }
  },

  colorForSeries: function (series) {
    var name = Em.I18n.t('services.service.info.metrics.flume.outgoing_mma');
    if (name.format("avg") == series.name){
      return '#0066b3';
    }else if (name.format("min") == series.name){
      return '#00CC00';
    }else if (name.format("max") == series.name){
      return '#FF8000';
    }
    return null;
  }
});
Example #5
0
App.ChartServiceMetricsYARN_QMR = App.ChartLinearTimeView.extend({
  id: "service-metrics-yarn-queue-memory-resource",
  title: Em.I18n.t('services.service.info.metrics.yarn.queueMemoryResource'),
  renderer: 'line',
  ajaxIndex: 'service.metrics.yarn.queue.memory.resource',
  yAxisFormatter: App.ChartLinearTimeView.PercentageFormatter,

  getDataForAjaxRequest: function () {
    var data = this._super();
    var svc = App.YARNService.find().objectAt(0);
    var queueNames = [];
    if (svc != null) {
      queueNames = svc.get('childQueueNames');
    }
    data.queueNames = queueNames;
    return data;
  },

  transformToSeries: function (jsonData) {
    var self = this;
    var seriesArray = [];
    var MB = Math.pow(2, 20);
    var svc = App.YARNService.find().objectAt(0);
    var queueNames = [];
    if (svc != null) {
      queueNames = svc.get('childQueueNames');
    }
    if (jsonData && jsonData.metrics && jsonData.metrics.yarn.Queue) {
      queueNames.forEach(function (qName) {
        var qPath = qName.replace(/\//g, '.')
        var displayName;
        var allocatedData = objUtils.getProperty(jsonData.metrics.yarn.Queue, qPath + '.AllocatedMB');
        var availableData = objUtils.getProperty(jsonData.metrics.yarn.Queue, qPath + '.AvailableMB');
        displayName = Em.I18n.t('services.service.info.metrics.yarn.queueMemoryResource.displayName').format(qName);
        var seriesData = null;
        if (allocatedData != null && availableData != null) {
          if (typeof allocatedData == "number" && typeof availableData == "number") {
            seriesData = (allocatedData * 100) / availableData;
          } else if (allocatedData.length > 0 && availableData.length > 0) {
            seriesData = [];
            for ( var c = 0; c < Math.min(availableData.length, allocatedData.length); c++) {
              seriesData.push([ (allocatedData[c][0] * 100) / availableData[c][0], allocatedData[c][1] ]);
            }
          } else {
            console.log("Skipping data series for Queue " + qName);
          }
        }
        if (seriesData != null) {
          seriesArray.push(self.transformData(seriesData, displayName));
        }
      });
    }
    return seriesArray;
  }
});
App.ChartServiceMetricsMapReduce_JVMThreads = App.ChartLinearTimeView.extend({
  id: "service-metrics-mapreduce-jvm-threads",
  title: Em.I18n.t('services.service.info.metrics.mapreduce.jvmThreads'),
  renderer: 'line',

  ajaxIndex: 'service.metrics.mapreduce.jobs_threads',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    if (jsonData && jsonData.metrics && jsonData.metrics.jvm) {
      for ( var name in jsonData.metrics.jvm) {
        var displayName;
        var seriesData = jsonData.metrics.jvm[name];
        switch (name) {
          case "threadsBlocked":
            displayName = Em.I18n.t('services.service.info.metrics.mapreduce.jvmThreads.displayNames.threadsBlocked');
            break;
          case "threadsWaiting":
            displayName = Em.I18n.t('services.service.info.metrics.mapreduce.jvmThreads.displayNames.threadsWaiting');
            break;
          case "threadsTimedWaiting":
            displayName = Em.I18n.t('services.service.info.metrics.mapreduce.jvmThreads.displayNames.threadsTimedWaiting');
            break;
          case "threadsRunnable":
            displayName = Em.I18n.t('services.service.info.metrics.mapreduce.jvmThreads.displayNames.threadsRunnable');
            break;
          default:
            break;
        }

        if (seriesData) {
          seriesArray.push(this.transformData(seriesData, displayName));
        }
      }
    }
    return seriesArray;
  }
});
App.ChartServiceMetricsHDFS_JVMHeap = App.ChartLinearTimeView.extend({
  id: "service-metrics-hdfs-jvm-heap",
  title: Em.I18n.t('services.service.info.metrics.hdfs.jvmHeap'),
  yAxisFormatter: App.ChartLinearTimeView.BytesFormatter,
  renderer: 'line',

  ajaxIndex: 'service.metrics.hdfs.jvm_heap',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    var MB = Math.pow(2, 20);
    if (jsonData && jsonData.metrics && jsonData.metrics.jvm) {
      for ( var name in jsonData.metrics.jvm) {
        var displayName;
        var seriesData = jsonData.metrics.jvm[name];
        switch (name) {
          case "memHeapCommittedM":
            displayName = Em.I18n.t('services.service.info.metrics.hdfs.jvmHeap.displayNames.memHeapCommittedM');
            break;
          case "memNonHeapUsedM":
            displayName = Em.I18n.t('services.service.info.metrics.hdfs.jvmHeap.displayNames.memNonHeapUsedM');
            break;
          case "memHeapUsedM":
            displayName = Em.I18n.t('services.service.info.metrics.hdfs.jvmHeap.displayNames.memHeapUsedM');
            break;
          case "memNonHeapCommittedM":
            displayName = Em.I18n.t('services.service.info.metrics.hdfs.jvmHeap.displayNames.memNonHeapCommittedM');
            break;
          default:
            break;
        }
        if (seriesData) {
          var s = this.transformData(seriesData, displayName);
          for (var i = 0; i < s.data.length; i++) {
            s.data[i].y *= MB;
          }
          seriesArray.push(s);
        }
      }
    }
    return seriesArray;
  }
});
Example #8
0
 * @extends Ember.Object
 * @extends Ember.View
 */
App.ChartServiceMetricsHDFS_RPC = App.ChartLinearTimeView.extend({
  id: "service-metrics-hdfs-rpc",
  title: Em.I18n.t('services.service.info.metrics.hdfs.rpc'),
  yAxisFormatter: App.ChartLinearTimeView.TimeElapsedFormatter,

  ajaxIndex: 'service.metrics.hdfs.rpc',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    if (jsonData && jsonData.metrics && jsonData.metrics.rpc) {
      for ( var name in jsonData.metrics.rpc) {
        var displayName;
        var seriesData = jsonData.metrics.rpc[name];
        switch (name) {
          case "RpcQueueTime_avg_time":
            displayName = Em.I18n.t('services.service.info.metrics.hdfs.rpc.displayNames.rpcQueueTimeAvgTime');
            break;
          default:
            break;
        }
        if (seriesData) {
          seriesArray.push(this.transformData(seriesData, displayName));
        }
      }
    }
    return seriesArray;
  }
});
Example #9
0
 * @class
 * 
 * This is a view for showing host process counts
 * 
 * @extends App.ChartLinearTimeView
 * @extends Ember.Object
 * @extends Ember.View
 */
App.ChartHostMetricsProcesses = App.ChartLinearTimeView.extend({
  id: "host-metrics-processes",
  title: Em.I18n.t('hosts.host.metrics.processes'),
  renderer: 'line',

  ajaxIndex: 'host.metrics.processes',

  loadGroup: {
    name: 'host.metrics.aggregated',
    fields: ['metrics/process/proc_total', 'metrics/process/proc_run']
  },

  seriesTemplate: {
    path: 'metrics.process',
    displayName: function (name) {
      var displayNameMap = {
        proc_total: Em.I18n.t('hosts.host.metrics.processes.displayNames.proc_total'),
        proc_run: Em.I18n.t('hosts.host.metrics.processes.displayNames.proc_run')
      };
      return displayNameMap[name];
    }
  }
});
 */
App.ChartServiceMetricsFlume_SinkConnectionFailedCount = App.ChartLinearTimeView.extend({
  id: "service-metrics-flume-sink-connection-failed",
  title: Em.I18n.t('services.service.info.metrics.flume.sinkConnectionFailed'),

  ajaxIndex: 'service.metrics.flume.sink_connection_failed',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    var self = this;
    if (jsonData && jsonData.host_components) {
      jsonData.host_components.forEach(function (hc) {
        var hostName = hc.HostRoles.host_name;
        var host = App.Host.find(hostName);
        if (host && host.get('publicHostName')) {
          hostName = host.get('publicHostName');
        }
        if (hc.metrics && hc.metrics.flume && hc.metrics.flume.flume && hc.metrics.flume.flume.SINK) {
          for ( var cname in hc.metrics.flume.flume.SINK) {
            var seriesName = Em.I18n.t('services.service.info.metrics.flume.sinkName').format(cname + " (" + hostName + ")");
            var seriesData = hc.metrics.flume.flume.SINK[cname]['ConnectionFailedCount'];
            if (seriesData) {
              seriesArray.push(self.transformData(seriesData, seriesName));
            }
          }
        }
      });
    }
    return seriesArray;
  }
});
App.ChartHostMetricsProcesses = App.ChartLinearTimeView.extend({
  id: "host-metrics-processes",
  title: Em.I18n.t('hosts.host.metrics.processes'),
  renderer: 'line',

  ajaxIndex: 'host.metrics.processes',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    if (jsonData && jsonData.metrics && jsonData.metrics.process) {
      for ( var name in jsonData.metrics.process) {
        var displayName;
        var seriesData = jsonData.metrics.process[name];
        switch (name) {
          case "proc_total":
            displayName = Em.I18n.t('hosts.host.metrics.processes.displayNames.proc_total');
            break;
          case "proc_run":
            displayName = Em.I18n.t('hosts.host.metrics.processes.displayNames.proc_run');
            break;
          default:
            break;
        }
        if (seriesData) {
          seriesArray.push(this.transformData(seriesData, displayName));
        }
      }
    }
    return seriesArray;
  }
});
Example #12
0
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */

var App = require('app');
require('mixins/common/chart/storm_linear_time');

App.ChartServiceMetricsSTORM_SlotsNumber = App.ChartLinearTimeView.extend(App.StormLinearTimeChartMixin, {
  id: "service-metrics-storm-supervisor-allocated",
  title: Em.I18n.t('services.storm.slots.metrics.title'),
  renderer: 'line',
  yAxisFormatter: App.ChartLinearTimeView.DefaultFormatter,

  stormChartDefinition: [
    {
      name: Em.I18n.t('services.storm.slots.metrics.total'),
      field: 'totalslots'
    },
    {
      name: Em.I18n.t('services.storm.slots.metrics.free'),
      field: 'freeslots'
    },
    {
      name: Em.I18n.t('services.storm.slots.metrics.used'),
      field: 'usedslots'
    }
  ]

});
App.ChartServiceMetricsYARN_AllocatedMemory = App.ChartLinearTimeView.extend({
  id: "service-metrics-yarn-queue-allocated",
  title: Em.I18n.t('services.service.info.metrics.yarn.allocated.memory'),
  renderer: 'line',
  ajaxIndex: 'service.metrics.yarn.queue.allocated',
  yAxisFormatter: App.ChartLinearTimeView.BytesFormatter,

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    var MB = Math.pow(2, 20);
    if (jsonData && jsonData.metrics && jsonData.metrics.yarn.Queue && jsonData.metrics.yarn.Queue.root) {
      for (var name in jsonData.metrics.yarn.Queue.root) {
        var displayName = null;
        var seriesData = jsonData.metrics.yarn.Queue.root[name];
        switch (name) {
          case "AvailableMB":
            displayName = Em.I18n.t('services.service.info.metrics.yarn.allocated.memory.displayNames.available');
            break;
          case "PendingMB":
            displayName = Em.I18n.t('services.service.info.metrics.yarn.allocated.memory.displayNames.pending');
            break;
          case "AllocatedMB":
            displayName = Em.I18n.t('services.service.info.metrics.yarn.allocated.memory.displayNames.allocated');
            break;
          default:
            break;
        }
        if (seriesData && displayName) {
          var s = this.transformData(seriesData, displayName);
          for (var i = 0; i < s.data.length; i++) {
            s.data[i].y *= MB;
          }
          seriesArray.push(s);
        }
      }
    }
    return seriesArray;
  }
});
App.ChartHostMetricsMemory = App.ChartLinearTimeView.extend({
  id: "host-metrics-memory",
  title: Em.I18n.t('hosts.host.metrics.memory'),
  yAxisFormatter: App.ChartLinearTimeView.BytesFormatter,
  renderer: 'line',

  ajaxIndex: 'host.metrics.memory',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    var KB = Math.pow(2, 10);
    if (jsonData && jsonData.metrics && jsonData.metrics.memory) {
      for ( var name in jsonData.metrics.memory) {
        var displayName;
        var seriesData = jsonData.metrics.memory[name];
        switch (name) {
          case "mem_shared":
            displayName = Em.I18n.t('hosts.host.metrics.memory.displayNames.mem_shared');
            break;
          case "swap_free":
            displayName = Em.I18n.t('hosts.host.metrics.memory.displayNames.swap_free');
            break;
          case "mem_buffers":
            displayName = Em.I18n.t('hosts.host.metrics.memory.displayNames.mem_buffers');
            break;
          case "mem_free":
            displayName = Em.I18n.t('hosts.host.metrics.memory.displayNames.mem_free');
            break;
          case "mem_cached":
            displayName = Em.I18n.t('hosts.host.metrics.memory.displayNames.mem_cached');
            break;
          default:
            break;
        }
        if (seriesData) {
          var s = this.transformData(seriesData, displayName);
          for (var i = 0; i < s.data.length; i++) {
            s.data[i].y *= KB;
          }
          seriesArray.push(s);
        }
      }
    }
    return seriesArray;
  }
});
Example #15
0
var App = require('app');

/**
 * @class
 * 
 * This is a view for showing HBase Cluster Requests
 * 
 * @extends App.ChartLinearTimeView
 * @extends Ember.Object
 * @extends Ember.View
 */
App.ChartServiceMetricsFlume_JVMThreadsRunnable = App.ChartLinearTimeView.extend({
  id: "service-metrics-flume-jvm-threads-runnable",
  title: Em.I18n.t('services.service.info.metrics.flume.jvmThreadsRunnable'),
  renderer: 'line',

  ajaxIndex: 'service.metrics.flume.jvm_threads_runnable',

  seriesTemplate: {
    path: 'metrics.jvm.threadsRunnable',
    displayName: function (name, hostName) {
      return Em.I18n.t('services.service.info.metrics.flume.hostName').format(hostName);
    }
  },

  getData: function (jsonData) {
    return this.getFlumeData(jsonData);
  }
});
App.ChartServiceMetricsYARN_AllocatedContainer = App.ChartLinearTimeView.extend({
  id: "service-metrics-yarn-queue-allocated-container",
  title: Em.I18n.t('services.service.info.metrics.yarn.allocated.container'),
  renderer: 'line',
  ajaxIndex: 'service.metrics.yarn.queue.allocated.container',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    if (jsonData && jsonData.metrics && jsonData.metrics.yarn.Queue && jsonData.metrics.yarn.Queue.root) {
      for (var name in jsonData.metrics.yarn.Queue.root) {
        var displayName = null;
        var seriesData = jsonData.metrics.yarn.Queue.root[name];
        switch (name) {
          case "ReservedContainers":
            displayName = Em.I18n.t('services.service.info.metrics.yarn.allocated.container.displayNames.reserved');
            break;
          case "PendingContainers":
            displayName = Em.I18n.t('services.service.info.metrics.yarn.allocated.container.displayNames.pending');
            break;
          case "AllocatedContainers":
            displayName = Em.I18n.t('services.service.info.metrics.yarn.allocated.container.displayNames.allocated');
            break;
          default:
            break;
        }
        if (seriesData != null && displayName) {
          seriesArray.push(this.transformData(seriesData, displayName));
        }
      }
    }
    return seriesArray;
  }
});
 * @extends App.ChartLinearTimeView
 * @extends Ember.Object
 * @extends Ember.View
 */
App.ChartServiceMetricsHBASE_RegionServerRegions = App.ChartLinearTimeView.extend({
  id: "service-metrics-hbase-regionserver-regions",
  title: Em.I18n.t('services.service.info.metrics.hbase.regionServerRegions'),

  ajaxIndex: 'service.metrics.hbase.regionserver_regions',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    if (jsonData && jsonData.metrics && jsonData.metrics.hbase && jsonData.metrics.hbase.regionserver) {
      for ( var name in jsonData.metrics.hbase.regionserver) {
        var displayName;
        var seriesData = jsonData.metrics.hbase.regionserver[name];
        switch (name) {
          case "regions":
            displayName = Em.I18n.t('services.service.info.metrics.hbase.regionServerRegions.displayNames.regions');
            break;
          default:
            break;
        }
        if (seriesData) {
          seriesArray.push(this.transformData(seriesData, displayName));
        }
      }
    }
    return seriesArray;
  }
});
Example #18
0
App.ChartHostMetricsDisk = App.ChartLinearTimeView.extend({
  id: "host-metrics-disk",
  title: Em.I18n.t('hosts.host.metrics.disk'),
  displayUnit: 'B',
  renderer: 'line',

  ajaxIndex: 'host.metrics.disk',

  loadGroup: {
    name: 'host.metrics.aggregated',
    fields: ['metrics/disk/disk_total', 'metrics/disk/disk_free']
  },

  seriesTemplate: {
    path: 'metrics.disk',
    displayName: function (name) {
      var displayNameMap = {
        disk_total: Em.I18n.t('hosts.host.metrics.disk.displayNames.disk_total'),
        disk_free: Em.I18n.t('hosts.host.metrics.disk.displayNames.disk_free')
      };
      return displayNameMap[name];
    },
    factor: Math.pow(2, 30)
  },

  getData: function (jsonData) {
    var partMaxUsed = Em.get(jsonData, 'metrics.part_max_used');
    if (!Em.isNone(partMaxUsed) && Em.get(jsonData, this.get('seriesTemplate.path'))) {
      Em.set(jsonData, this.get('seriesTemplate.path') + '.part_max_used', partMaxUsed);
    }
    return this._super(jsonData);
  }
});
Example #19
0
App.ChartServiceFlumeMetricGraph = App.ChartLinearTimeView.extend({
  /**
   * One of 'SOURCE', 'SINK' or 'CHANNEL'.
   */
  metricType: null,
  metricName: null,
  hostName: null,
  metricItems: null,

  id: function(){
    return "service-metrics-flume-metric-graph-" + this.get('metricType') + '-' + this.get('metricName');
  }.property('metricType', 'metricName'),

  title: function(){
    return this.get('metricName');
  }.property('metricName'),

  ajaxIndex: 'host.host_component.flume.metrics.timeseries',

  getDataForAjaxRequest: function() {
    var data = this._super();

    var urlFields = '';
    this.get('metricItems').forEach(function (metricItem, index) {
      urlFields += index === 0 ? '' : ',';
      urlFields += 'metrics/flume/flume/' + this.get('metricType') + '/' + metricItem + '/' + this.get('metricName') +
          '[' + data.fromSeconds + ',' + data.toSeconds + ',' + data.stepSeconds + ']'
    }, this);

    data.url = App.get('apiPrefix') + '/clusters/' + App.get('clusterName') + '/hosts/' + this.get('hostName') + '/host_components/FLUME_HANDLER?fields=' + urlFields;
    return data;
  },

  seriesTemplate: {
    path: 'metrics.flume.flume'
  },

  getData: function (jsonData) {

    var dataArray = [],
      data = Em.get(jsonData, this.get('seriesTemplate.path') + '.' + this.get('metricType'));
    if (data) {
      for (var componentName in data) {
        var seriesData = data[componentName][this.get('metricName')];
        if (seriesData) {
          dataArray.push({
            name: componentName,
            data: seriesData
          });
        }
      }
    }
    return dataArray;
  }
});
App.ChartServiceMetricsHDFS_SpaceUtilization = App.ChartLinearTimeView.extend({
  id: "service-metrics-hdfs-space-utilization",
  title: Em.I18n.t('services.service.info.metrics.hdfs.spaceUtilization'),
  yAxisFormatter: App.ChartLinearTimeView.BytesFormatter,
  renderer: 'line',
  ajaxIndex: 'service.metrics.hdfs.space_utilization',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    var GB = Math.pow(2, 30);
    if (jsonData && jsonData.metrics && jsonData.metrics.dfs && jsonData.metrics.dfs.FSNamesystem) {
      for ( var name in jsonData.metrics.dfs.FSNamesystem) {
        var displayName;
        var seriesData = jsonData.metrics.dfs.FSNamesystem[name];
        switch (name) {
          case "CapacityRemainingGB":
            displayName = Em.I18n.t('services.service.info.metrics.hdfs.spaceUtilization.displayNames.capacityRemainingGB');
            break;
          case "CapacityUsedGB":
            displayName = Em.I18n.t('services.service.info.metrics.hdfs.spaceUtilization.displayNames.capacityUsedGB');
            break;
          case "CapacityTotalGB":
            displayName = Em.I18n.t('services.service.info.metrics.hdfs.spaceUtilization.displayNames.capacityTotalGB');
            break;
          default:
            break;
        }
        if (seriesData) {
          var s = this.transformData(seriesData, displayName);
          for (var i = 0; i < s.data.length; i++) {
            s.data[i].y *= GB;
          }
          seriesArray.push(s);
        }
      }
    }
    return seriesArray;
  }
});
Example #21
0
 */
App.ChartServiceMetricsFlume_GarbageCollection = App.ChartLinearTimeView.extend({
  id: "service-metrics-flume-jvm-gc",
  title: Em.I18n.t('services.service.info.metrics.flume.gc'),
  yAxisFormatter: App.ChartLinearTimeView.TimeElapsedFormatter,

  ajaxIndex: 'service.metrics.flume.gc',

  transformToSeries: function (jsonData) {
    var seriesArray = [];
    var self = this;
    if (jsonData && jsonData.host_components) {
      jsonData.host_components.forEach(function (hc) {
        var hostName = hc.HostRoles.host_name;
        var host = App.Host.find(hostName);
        if (host && host.get('publicHostName')) {
          hostName = host.get('publicHostName');
        }
        if (hc.metrics && hc.metrics.jvm && hc.metrics.jvm.gcTimeMillis) {
          var seriesName = Em.I18n.t('services.service.info.metrics.flume.hostName').format(hostName);
          var seriesData = hc.metrics.jvm.gcTimeMillis;
          if (seriesData) {
            seriesArray.push(self.transformData(seriesData, seriesName));
          }
        }
      });
    }
    return seriesArray;
  }
});
Example #22
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.
 */

var App = require('app');

/**
 * @class
 *
 * This is a view for showing Kafka_Controller
 *
 * @extends App.ChartLinearTimeView
 * @extends Ember.Object
 * @extends Ember.View
 */
App.ChartServiceMetricsKafka_Controller = App.ChartLinearTimeView.extend({
  id: "service-metrics-kafka-controller-metrics",
  title: Em.I18n.t('services.service.info.metrics.kafka.controller.KafkaController.title'),
  renderer: 'line',
  ajaxIndex: 'service.metrics.kafka.controller.KafkaController',

  seriesTemplate: {
    path: 'metrics.kafka.controller.KafkaController',
    displayName: function () {
      return Em.I18n.t('services.service.info.metrics.kafka.controller.KafkaController.displayNames.ActiveControllerCount');
    }
  }
});
 */
App.ChartServiceMetricsYARN_ApplicationCurrentStates = App.ChartLinearTimeView.extend({
  id: "service-metrics-yarn-apps-current-states",
  title: Em.I18n.t('services.service.info.metrics.yarn.apps.states.current.title'),
  renderer: 'line',
  ajaxIndex: 'service.metrics.yarn.queue.apps.states.current',
      
  transformToSeries: function (jsonData) {
    var seriesArray = [];
    if (jsonData && jsonData.metrics && jsonData.metrics.yarn.Queue && jsonData.metrics.yarn.Queue.root) {
      for (var name in jsonData.metrics.yarn.Queue.root) {
        var displayName = null;
        var seriesData = jsonData.metrics.yarn.Queue.root[name];
        switch (name) {
          case "AppsPending":
            displayName = Em.I18n.t('services.service.info.metrics.yarn.apps.states.pending');
            break;
          case "AppsRunning":
            displayName = Em.I18n.t('services.service.info.metrics.yarn.apps.states.running');
            break;
          default:
            break;
        }
        if (seriesData != null && displayName) {
          seriesArray.push(this.transformData(seriesData, displayName));
        }
      }
    }
    return seriesArray;
  }
});