mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Added an option for the hits panel to receive its counter from the histogram panel
This commit is contained in:
parent
dfc9ad949a
commit
47bc78c7f7
@ -86,13 +86,15 @@ angular.module('kibana.histogram', [])
|
||||
// Populate scope when we have results
|
||||
results.then(function(results) {
|
||||
$scope.panel.loading = false;
|
||||
$scope.hits = results.hits.total;
|
||||
if(_segment == 0) {
|
||||
$scope.hits = 0;
|
||||
$scope.data = [];
|
||||
query_id = $scope.query_id = new Date().getTime();
|
||||
}
|
||||
|
||||
if($scope.query_id === query_id) {
|
||||
$scope.hits += results.hits.total;
|
||||
|
||||
_.each(results.facets, function(v, k) {
|
||||
// Null values at each end of the time range ensure we see entire range
|
||||
if(_.isUndefined($scope.data[k]) || _segment == 0) {
|
||||
@ -122,6 +124,7 @@ angular.module('kibana.histogram', [])
|
||||
$scope.data[k] = series.data
|
||||
});
|
||||
|
||||
eventBus.broadcast($scope.$id,$scope.panel.group,'hits',$scope.hits)
|
||||
$scope.$emit('render')
|
||||
if(_segment < $scope.panel.index.length-1) {
|
||||
$scope.get_data(_segment+1,query_id)
|
||||
|
@ -1,11 +1,17 @@
|
||||
<div class="row-fluid" ng-controller="hits">
|
||||
<div class="span11">
|
||||
The hits panel shows a simple count of how many records match your filtered query. If multiple queries are sent from a single panel the <strong>first query will be displayed</strong>
|
||||
<div class="span2">
|
||||
<label class="small">Run Query</label><input type="checkbox" ng-model="panel.run_query" ng-checked="panel.run_query">
|
||||
</div>
|
||||
<div class="span9" ng-show='!panel.run_query'>
|
||||
With query running disabled, this panel receives its hit count from a histogram panel. If multiple queries are running this <strong>will show the total of all queries</strong>.
|
||||
</div>
|
||||
<div class="span9" ng-show='panel.run_query'>
|
||||
This shows a simple count of how many records match your filtered query. If multiple queries are sent from a single panel the <strong>first query will be displayed</strong>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span9">
|
||||
<div class="span9" ng-show='panel.run_query'>
|
||||
<form class="input-append">
|
||||
<h6>Query</h6>
|
||||
<input type="text" style="width:85%" ng-model="panel.query">
|
||||
|
@ -6,15 +6,24 @@ angular.module('kibana.hits', [])
|
||||
query : "*",
|
||||
group : "default",
|
||||
style : { "font-size": '36pt', "font-weight": "bold" },
|
||||
run_query : false
|
||||
}
|
||||
_.defaults($scope.panel,_d)
|
||||
|
||||
$scope.init = function () {
|
||||
eventBus.register($scope,'time', function(event,time){set_time(time)});
|
||||
$scope.hits = 0;
|
||||
eventBus.register($scope,'time', function(event,time){
|
||||
if($scope.panel.run_query)
|
||||
set_time(time)
|
||||
});
|
||||
eventBus.register($scope,'query', function(event, query) {
|
||||
$scope.panel.query = _.isArray(query) ? query[0] : query;
|
||||
$scope.get_data();
|
||||
if($scope.panel.run_query)
|
||||
$scope.get_data();
|
||||
});
|
||||
eventBus.register($scope,'hits', function(event, hits) {
|
||||
$scope.hits = hits;
|
||||
})
|
||||
// Now that we're all setup, request the time from our group
|
||||
eventBus.broadcast($scope.$id,$scope.panel.group,'get_time')
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user