From def3f9115d2f2cfdfbd5354b4c1a249917a69d06 Mon Sep 17 00:00:00 2001 From: Alexander Zobnin Date: Wed, 16 Mar 2016 21:00:11 +0300 Subject: [PATCH] Removed unused files. --- src/datasource-zabbix/directives.js | 21 -- src/datasource-zabbix/helperFunctions.js | 311 ----------------------- 2 files changed, 332 deletions(-) delete mode 100644 src/datasource-zabbix/directives.js delete mode 100644 src/datasource-zabbix/helperFunctions.js diff --git a/src/datasource-zabbix/directives.js b/src/datasource-zabbix/directives.js deleted file mode 100644 index 8d274f5..0000000 --- a/src/datasource-zabbix/directives.js +++ /dev/null @@ -1,21 +0,0 @@ -define([ - 'angular' - ], - function (angular) { - 'use strict'; - - var module = angular.module('grafana.directives'); - - module.directive('metricQueryEditorZabbix', function() { - return {controller: 'ZabbixAPIQueryCtrl', templateUrl: 'public/plugins/zabbix/partials/query.editor.html'}; - }); - - module.directive('metricQueryOptionsZabbix', function() { - return {templateUrl: 'public/plugins/zabbix/partials/query.options.html'}; - }); - - module.directive('annotationsQueryEditorZabbix', function() { - return {templateUrl: 'public/plugins/zabbix/partials/annotations.editor.html'}; - }); - - }); diff --git a/src/datasource-zabbix/helperFunctions.js b/src/datasource-zabbix/helperFunctions.js deleted file mode 100644 index d844d92..0000000 --- a/src/datasource-zabbix/helperFunctions.js +++ /dev/null @@ -1,311 +0,0 @@ -define([ - 'angular', - 'lodash' -], -function (angular, _) { - 'use strict'; - - var module = angular.module('grafana.services'); - - module.service('zabbixHelperSrv', function($q) { - var self = this; - - /** - * Convert Zabbix API history.get response to Grafana format - * - * @param {Array} items Array of Zabbix Items - * @param alias - * @param scale - * @param {Array} history Array of Zabbix History - * - * @return {Array} Array of timeseries in Grafana format - * { - * target: "Metric name", - * datapoints: [[, ], ...] - * } - */ - this.handleHistoryResponse = function(items, alias, scale, history) { - /** - * Response should be in the format: - * data: [ - * { - * target: "Metric name", - * datapoints: [[, ], ...] - * }, - * { - * target: "Metric name", - * datapoints: [[, ], ...] - * }, - * ] - */ - - // Group items and history by itemid - var indexed_items = _.indexBy(items, 'itemid'); - var grouped_history = _.groupBy(history, 'itemid'); - - var self = this; - return $q.when(_.map(grouped_history, function (history, itemid) { - var item = indexed_items[itemid]; - return { - target: (item.host ? item.host + ': ' : '') - + (alias ? alias : self.expandItemName(item)), - datapoints: _.map(history, function (p) { - - // Value must be a number for properly work - var value = Number(p.value); - - // Apply scale - if (scale) { - value *= scale; - } - return [value, p.clock * 1000]; - }) - }; - })).then(function (result) { - return _.sortBy(result, 'target'); - }); - }; - - /** - * Convert Zabbix API trends.get response to Grafana format - * - * @param {Array} items Array of Zabbix Items - * @param alias - * @param scale - * @param {string} points Point value to return: min, max or avg - * @param {Array} trends Array of Zabbix Trends - * - * @return {Array} Array of timeseries in Grafana format - * { - * target: "Metric name", - * datapoints: [[, ], ...] - * } - */ - this.handleTrendResponse = function (items, alias, scale, points, trends) { - - // Group items and trends by itemid - var indexed_items = _.indexBy(items, 'itemid'); - var grouped_trends = _.groupBy(trends, 'itemid'); - - var self = this; - return $q.when(_.map(grouped_trends, function (trends, itemid) { - var item = indexed_items[itemid]; - return { - target: (item.hosts ? item.hosts[0].name+': ' : '') - + (alias ? alias : self.expandItemName(item)), - datapoints: _.map(trends, function (p) { - - // Value must be a number for properly work - var value; - if (points === "min") { - value = Number(p.value_min); - } - else if (points === "max") { - value = Number(p.value_max); - } - else { - value = Number(p.value_avg); - } - - // Apply scale - if (scale) { - value *= scale; - } - return [value, p.clock * 1000]; - }) - }; - })).then(function (result) { - return _.sortBy(result, 'target'); - }); - }; - - /** - * Convert Zabbix API service.getsla response to Grafana format - * - * @param itservice - * @param slaProperty - * @param slaObject - * @returns {{target: *, datapoints: *[]}} - */ - this.handleSLAResponse = function (itservice, slaProperty, slaObject) { - var targetSLA = slaObject[itservice.serviceid].sla[0]; - if (slaProperty.property === 'status') { - var targetStatus = parseInt(slaObject[itservice.serviceid].status); - return { - target: itservice.name + ' ' + slaProperty.name, - datapoints: [ - [targetStatus, targetSLA.to * 1000] - ] - }; - } else { - return { - target: itservice.name + ' ' + slaProperty.name, - datapoints: [ - [targetSLA[slaProperty.property], targetSLA.from * 1000], - [targetSLA[slaProperty.property], targetSLA.to * 1000] - ] - }; - } - }; - - /** - * Expand item parameters, for example: - * CPU $2 time ($3) --> CPU system time (avg1) - * - * @param item: zabbix api item object - * @return {string} expanded item name (string) - */ - this.expandItemName = function(item) { - var name = item.name; - var key = item.key_; - - // extract params from key: - // "system.cpu.util[,system,avg1]" --> ["", "system", "avg1"] - var key_params = key.substring(key.indexOf('[') + 1, key.lastIndexOf(']')).split(','); - - // replace item parameters - for (var i = key_params.length; i >= 1; i--) { - name = name.replace('$' + i, key_params[i - 1]); - } - return name; - }; - - /** - * Convert multiple mettrics to array - * "{metric1,metcic2,...,metricN}" --> [metric1, metcic2,..., metricN] - * - * @param {string} metrics "{metric1,metcic2,...,metricN}" - * @return {Array} [metric1, metcic2,..., metricN] - */ - this.splitMetrics = function(metrics) { - var remove_brackets_pattern = /^{|}$/g; - var metric_split_pattern = /,(?!\s)/g; - return metrics.replace(remove_brackets_pattern, '').split(metric_split_pattern); - }; - - /** - * Convert Date object to local time in format - * YYYY-MM-DD HH:mm:ss - * - * @param {Date} date Date object - * @return {string} formatted local time YYYY-MM-DD HH:mm:ss - */ - this.getShortTime = function(date) { - var MM = date.getMonth() < 10 ? '0' + date.getMonth() : date.getMonth(); - var DD = date.getDate() < 10 ? '0' + date.getDate() : date.getDate(); - var HH = date.getHours() < 10 ? '0' + date.getHours() : date.getHours(); - var mm = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); - var ss = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds(); - return date.getFullYear() + '-' + MM + '-' + DD + ' ' + HH + ':' + mm + ':' + ss; - }; - - /** - * Format acknowledges. - * - * @param {array} acknowledges array of Zabbix acknowledge objects - * @return {string} HTML-formatted table - */ - this.formatAcknowledges = function(acknowledges) { - if (acknowledges.length) { - var formatted_acknowledges = '

Acknowledges:
' - + ''; - _.each(_.map(acknowledges, function (ack) { - var time = new Date(ack.clock * 1000); - return ''; - }), function (ack) { - formatted_acknowledges = formatted_acknowledges.concat(ack); - }); - formatted_acknowledges = formatted_acknowledges.concat('
TimeUserComments
' + self.getShortTime(time) + '' + ack.alias - + ' (' + ack.name + ' ' + ack.surname + ')' + '' + ack.message + '
'); - return formatted_acknowledges; - } else { - return ''; - } - }; - - /** - * Downsample datapoints series - * - * @param {Object[]} datapoints [[, ], ...] - * @param {integer} time_to Panel time to - * @param {integer} ms_interval Interval in milliseconds for grouping datapoints - * @param {string} func Value to return: min, max or avg - * @return {Object[]} [[, ], ...] - */ - this.downsampleSeries = function(datapoints, time_to, ms_interval, func) { - var downsampledSeries = []; - var timeWindow = { - from: time_to * 1000 - ms_interval, - to: time_to * 1000 - }; - - var points_sum = 0; - var points_num = 0; - var value_avg = 0; - var frame = []; - - for (var i = datapoints.length - 1; i >= 0; i -= 1) { - if (timeWindow.from < datapoints[i][1] && datapoints[i][1] <= timeWindow.to) { - points_sum += datapoints[i][0]; - points_num++; - frame.push(datapoints[i][0]); - } - else { - value_avg = points_num ? points_sum / points_num : 0; - - if (func === "max") { - downsampledSeries.push([_.max(frame), timeWindow.to]); - } - else if (func === "min") { - downsampledSeries.push([_.min(frame), timeWindow.to]); - } - - // avg by default - else { - downsampledSeries.push([value_avg, timeWindow.to]); - } - - // Shift time window - timeWindow.to = timeWindow.from; - timeWindow.from -= ms_interval; - - points_sum = 0; - points_num = 0; - frame = []; - - // Process point again - i++; - } - } - return downsampledSeries.reverse(); - }; - - /** - * Convert event age from Unix format (milliseconds sins 1970) - * to Zabbix format (like at Last 20 issues panel). - * @param {Date} AgeUnix time in Unix format - * @return {string} Formatted time - */ - this.toZabbixAgeFormat = function(ageUnix) { - var age = new Date(+ageUnix); - var ageZabbix = age.getSeconds() + 's'; - if (age.getMinutes()) { - ageZabbix = age.getMinutes() + 'm ' + ageZabbix; - } - if (age.getHours()) { - ageZabbix = age.getHours() + 'h ' + ageZabbix; - } - if (age.getDate() - 1) { - ageZabbix = age.getDate() - 1 + 'd ' + ageZabbix; - } - if (age.getMonth()) { - ageZabbix = age.getMonth() + 'M ' + ageZabbix; - } - if (age.getYear() - 70) { - ageZabbix = age.getYear() -70 + 'y ' + ageZabbix; - } - return ageZabbix; - }; - - }); -}); \ No newline at end of file