kibana-sinatra 3.1.0.2 → 3.1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +15 -1
- data/lib/kibana/assets/app/app.js +17 -1
- data/lib/kibana/assets/app/controllers/row.js +5 -0
- data/lib/kibana/assets/app/directives/kibanaPanel.js +5 -0
- data/lib/kibana/assets/app/panels/bettermap/module.js +1 -1
- data/lib/kibana/assets/app/partials/connectionFailed.html +20 -0
- data/lib/kibana/assets/app/services/dashboard.js +2 -1
- data/lib/kibana/assets/app/services/kbnIndex.js +1 -1
- data/lib/kibana/assets/vendor/angular/angular-strap.js +4 -3
- data/lib/kibana/sinatra/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 42a24f6644365d6e9ec2c9a9fca3bf4101d88217
|
4
|
+
data.tar.gz: 9e00965d345f23a7299aba04689a2127ab79fd22
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 23127982f74f767ee8732d9a99f155785acf0624492ba76fb71d3de4c929affed233ed7ff01ad20da915947e47d422d3ec3fb595fc305df02ab0e3e660151009
|
7
|
+
data.tar.gz: 966859ccd8652a412a47aaf7613fb49f1ec118dfa97e7e26992a2ff1991dcc0b7b0224aefb07ac84c5bbb3d5f4fac05137e8ffaccfef2ba5a29818cd4ab21787
|
data/README.md
CHANGED
@@ -81,11 +81,23 @@ If you would like to include custom dashboard JSON files you can do so by overri
|
|
81
81
|
|
82
82
|
This method should return the JSON as a string.
|
83
83
|
|
84
|
-
You could then make that JSON file the default by overriding `default_route
|
84
|
+
You could then make that JSON file the default by overriding `default_route`.
|
85
|
+
|
86
|
+
Here is a full example:
|
85
87
|
|
86
88
|
```ruby
|
87
89
|
module Kibana::Sinatra
|
88
90
|
class Web
|
91
|
+
|
92
|
+
def render_dashboard(name)
|
93
|
+
case name
|
94
|
+
when "test.json"
|
95
|
+
"{}"
|
96
|
+
when "asdf.json"
|
97
|
+
{}.to_json
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
89
101
|
def default_route
|
90
102
|
"/dashboard/file/test.json"
|
91
103
|
end
|
@@ -93,6 +105,8 @@ module Kibana::Sinatra
|
|
93
105
|
end
|
94
106
|
```
|
95
107
|
|
108
|
+
Please note there are some [built in dashboard](https://github.com/ianneub/kibana-sinatra/tree/master/lib/kibana/assets/app/dashboards) files that you will **NOT** be able to override.
|
109
|
+
|
96
110
|
## Versions
|
97
111
|
|
98
112
|
Kibana-sinatra's version number will match the upstream Kibana version number, plus an additional build number. For example:
|
@@ -69,9 +69,25 @@ function (angular, $, _, appLevelRequire) {
|
|
69
69
|
}
|
70
70
|
};
|
71
71
|
|
72
|
-
app.config(function ($routeProvider, $controllerProvider, $compileProvider, $filterProvider, $provide) {
|
72
|
+
app.config(function ($routeProvider, $controllerProvider, $httpProvider, $compileProvider, $filterProvider, $provide) {
|
73
|
+
|
74
|
+
|
75
|
+
$httpProvider.interceptors.push(['$location', function($location) {
|
76
|
+
return {
|
77
|
+
responseError: function(resp) {
|
78
|
+
if (resp.status === 0) {
|
79
|
+
console.log("redirecting");
|
80
|
+
$location.path('/connectionFailed');
|
81
|
+
console.log(resp);
|
82
|
+
}
|
83
|
+
}
|
84
|
+
};
|
85
|
+
}]);
|
73
86
|
|
74
87
|
$routeProvider
|
88
|
+
.when('/connectionFailed', {
|
89
|
+
templateUrl: 'app/partials/connectionFailed.html',
|
90
|
+
})
|
75
91
|
.when('/dashboard', {
|
76
92
|
templateUrl: 'app/partials/dashboard.html',
|
77
93
|
})
|
@@ -47,6 +47,11 @@ function (angular,$) {
|
|
47
47
|
'<i class="icon-cog pointer" bs-tooltip="\'Configure\'"></i></span>'+
|
48
48
|
'</span>' +
|
49
49
|
|
50
|
+
'<span class="row-button extra" ng-show="panel.editable != false">' +
|
51
|
+
'<span ng-click="duplicate_panel(panel)" class="pointer">'+
|
52
|
+
'<i class="icon-copy pointer" bs-tooltip="\'Duplicate\'"></i></span>'+
|
53
|
+
'</span>' +
|
54
|
+
|
50
55
|
'<span ng-repeat="task in panelMeta.modals" class="row-button extra" ng-show="task.show">' +
|
51
56
|
'<span bs-modal="task.partial" class="pointer"><i ' +
|
52
57
|
'bs-tooltip="task.description" ng-class="task.icon" class="pointer"></i></span>'+
|
@@ -241,7 +241,7 @@ function (angular, app, _, L, localRequire) {
|
|
241
241
|
|
242
242
|
// This could be made configurable?
|
243
243
|
L.tileLayer('http://otile1.mqcdn.com/tiles/1.0.0/map/{z}/{x}/{y}.jpg', {
|
244
|
-
attribution: '
|
244
|
+
attribution: 'Data, imagery and map information provided by MapQuest, '+
|
245
245
|
'OpenStreetMap <http://www.openstreetmap.org/copyright> and contributors, ODbL',
|
246
246
|
maxZoom: 18,
|
247
247
|
minZoom: 2
|
@@ -0,0 +1,20 @@
|
|
1
|
+
|
2
|
+
<p>
|
3
|
+
<div class="row">
|
4
|
+
<div class="container-fluid main">
|
5
|
+
<div class="kibana-container container">
|
6
|
+
<div class="span12">
|
7
|
+
<h1>Connection Failed</h1>
|
8
|
+
|
9
|
+
<h5>Possibility #1: Your elasticsearch server is down or unreachable</h5>
|
10
|
+
This can be caused by a network outage, or a failure of the Elasticsearch process. If you have recently run a query that required a <i>terms</i> facet to be executed it is possible the process has run out of memory and stopped. Be sure to check your Elasticsearch logs for any sign of memory pressure.
|
11
|
+
<h5>Possibility #2: You are running Elasticsearch 1.4 or higher</h5>
|
12
|
+
Elasticsearch 1.4 ships with a security setting that prevents Kibana from connecting. You will need to set <i>http.cors.allow-origin</i> in your <i>elasticsearch.yml</i> to the correct protocol, hostname, and port (if not 80) that your access Kibana from. Note that if you are running Kibana in a sub-url, you should exclude the sub-url path and only include the protocol, hostname and port. For example, <i>http://mycompany.com:8080</i>, not <i>http://mycompany.com:8080/kibana</i>.
|
13
|
+
|
14
|
+
<h5>Click back, or the home button, when you have resolved the connection issue</h5>
|
15
|
+
</ol>
|
16
|
+
</div>
|
17
|
+
</div>
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
</p>
|
@@ -77,8 +77,9 @@ function (angular, $, kbn, _, config, moment, Modernizr) {
|
|
77
77
|
this.last = {};
|
78
78
|
this.availablePanels = [];
|
79
79
|
|
80
|
-
$rootScope.$on('$routeChangeSuccess',function(){
|
80
|
+
$rootScope.$on('$routeChangeSuccess', function () {
|
81
81
|
// Clear the current dashboard to prevent reloading
|
82
|
+
if ($location.path() === '/connectionFailed') { return; }
|
82
83
|
self.current = {};
|
83
84
|
self.indices = [];
|
84
85
|
esVersion.isMinimum().then(function(isMinimum) {
|
@@ -37,7 +37,7 @@ function (angular, _, config, moment) {
|
|
37
37
|
var something;
|
38
38
|
indices = _.uniq(_.map(indices, encodeURIComponent));
|
39
39
|
|
40
|
-
something = ejs.client.get("/" + indices.join(",") + "/_aliases?ignore_missing=true",
|
40
|
+
something = ejs.client.get("/" + indices.join(",") + "/_aliases?ignore_unavailable=true&ignore_missing=true",
|
41
41
|
undefined, undefined, function (data, p) {
|
42
42
|
if (p === 404) {
|
43
43
|
return [];
|
@@ -772,7 +772,8 @@ angular.module('$strap.directives').directive('bsTimepicker', [
|
|
772
772
|
angular.module('$strap.directives').directive('bsTooltip', [
|
773
773
|
'$parse',
|
774
774
|
'$compile',
|
775
|
-
|
775
|
+
'$sanitize',
|
776
|
+
function ($parse, $compile, $sanitize) {
|
776
777
|
return {
|
777
778
|
restrict: 'A',
|
778
779
|
scope: true,
|
@@ -795,7 +796,7 @@ angular.module('$strap.directives').directive('bsTooltip', [
|
|
795
796
|
}
|
796
797
|
element.tooltip({
|
797
798
|
title: function () {
|
798
|
-
return angular.isFunction(value) ? value.apply(null, arguments) : value;
|
799
|
+
return $sanitize(angular.isFunction(value) ? value.apply(null, arguments) : value);
|
799
800
|
},
|
800
801
|
html: true
|
801
802
|
});
|
@@ -875,4 +876,4 @@ angular.module('$strap.directives').directive('bsTypeahead', [
|
|
875
876
|
}
|
876
877
|
};
|
877
878
|
}
|
878
|
-
]);
|
879
|
+
]);
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kibana-sinatra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.1.0
|
4
|
+
version: 3.1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ian Neubert
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-10-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -249,6 +249,7 @@ files:
|
|
249
249
|
- lib/kibana/assets/app/panels/trends/editor.html
|
250
250
|
- lib/kibana/assets/app/panels/trends/module.html
|
251
251
|
- lib/kibana/assets/app/panels/trends/module.js
|
252
|
+
- lib/kibana/assets/app/partials/connectionFailed.html
|
252
253
|
- lib/kibana/assets/app/partials/dashLoader.html
|
253
254
|
- lib/kibana/assets/app/partials/dashLoaderShare.html
|
254
255
|
- lib/kibana/assets/app/partials/dashboard.html
|