mirror of https://github.com/grafana/grafana
parent
39bc3cb532
commit
1113081aab
@ -1,108 +0,0 @@ |
||||
define([ |
||||
'angular', |
||||
'lodash', |
||||
'moment', |
||||
'store' |
||||
], |
||||
function (angular, _, moment, store) { |
||||
'use strict'; |
||||
|
||||
var module = angular.module('grafana.controllers'); |
||||
var consoleEnabled = store.getBool('grafanaConsole'); |
||||
|
||||
if (!consoleEnabled) { |
||||
return; |
||||
} |
||||
|
||||
var events = []; |
||||
|
||||
function ConsoleEvent(type, title, data) { |
||||
this.type = type; |
||||
this.title = title; |
||||
this.data = data; |
||||
this.time = moment().format('hh:mm:ss'); |
||||
|
||||
if (data.config) { |
||||
this.method = data.config.method; |
||||
this.elapsed = (new Date().getTime() - data.config.$grafana_timestamp) + ' ms'; |
||||
if (data.config.params && data.config.params.q) { |
||||
this.field2 = data.config.params.q; |
||||
} |
||||
if (_.isString(data.config.data)) { |
||||
this.field2 = data.config.data; |
||||
} |
||||
if (data.status !== 200) { |
||||
this.error = true; |
||||
this.field3 = data.data; |
||||
} |
||||
|
||||
if (_.isArray(data.data)) { |
||||
this.extractTimeseriesInfo(data.data); |
||||
} |
||||
} |
||||
} |
||||
|
||||
ConsoleEvent.prototype.extractTimeseriesInfo = function(series) { |
||||
if (series.length === 0) { |
||||
return; |
||||
} |
||||
|
||||
var points = 0; |
||||
var ok = false; |
||||
|
||||
if (series[0].datapoints) { |
||||
points = _.reduce(series, function(memo, val) { |
||||
return memo + val.datapoints.length; |
||||
}, 0); |
||||
ok = true; |
||||
} |
||||
if (series[0].columns) { |
||||
points = _.reduce(series, function(memo, val) { |
||||
return memo + val.points.length; |
||||
}, 0); |
||||
ok = true; |
||||
} |
||||
|
||||
if (ok) { |
||||
this.field1 = '(' + series.length + ' series'; |
||||
this.field1 += ', ' + points + ' points)'; |
||||
} |
||||
}; |
||||
|
||||
module.config(function($provide, $httpProvider) { |
||||
$provide.factory('mupp', function($q) { |
||||
return { |
||||
'request': function(config) { |
||||
if (config.inspect) { |
||||
config.$grafana_timestamp = new Date().getTime(); |
||||
} |
||||
return config; |
||||
}, |
||||
'response': function(response) { |
||||
if (response.config.inspect) { |
||||
events.push(new ConsoleEvent(response.config.inspect.type, response.config.url, response)); |
||||
} |
||||
return response; |
||||
}, |
||||
'requestError': function(rejection) { |
||||
console.log('requestError', rejection); |
||||
return $q.reject(rejection); |
||||
}, |
||||
'responseError': function (rejection) { |
||||
var inspect = rejection.config.inspect || { type: 'error' }; |
||||
events.push(new ConsoleEvent(inspect.type, rejection.config.url, rejection)); |
||||
return $q.reject(rejection); |
||||
} |
||||
}; |
||||
}); |
||||
|
||||
$httpProvider.interceptors.push('mupp'); |
||||
}); |
||||
|
||||
module.controller('ConsoleCtrl', function($scope) { |
||||
|
||||
$scope.events = events; |
||||
|
||||
}); |
||||
|
||||
}); |
||||
Loading…
Reference in new issue