diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6cbdae5c3e23..19dffe7114a1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -218,7 +218,7 @@ So, you've been assigned a pull to review. What's that look like? Remember, someone is blocked by a pull awaiting review, make it count. Be thorough, the more action items you catch in the first review, the less back and forth will be required, and the better chance the pull has of being successful. Don't you like success? -1. **Understand the issue** that is being fixed, or the feature being added. Check the description on the pull, and check out the related issue. If you don't understand something, ask the person the submitter for clarification. +1. **Understand the issue** that is being fixed, or the feature being added. Check the description on the pull, and check out the related issue. If you don't understand something, ask the submitter for clarification. 1. **Reproduce the bug** (or the lack of feature I guess?) in the destination branch, usually `master`. The referenced issue will help you here. If you're unable to reproduce the issue, contact the issue submitter for clarification 1. **Check out the pull** and test it. Is the issue fixed? Does it have nasty side effects? Try to create suspect inputs. If it operates on the value of a field try things like: strings (including an empty string), null, numbers, dates. Try to think of edge cases that might break the code. 1. **Merge the target branch**. It is possible that tests or the linter have been updated in the target branch since the pull was submitted. Merging the pull could cause core to start failing. diff --git a/config/kibana.yml b/config/kibana.yml index 0f506c91579b..37c4292d6e42 100644 --- a/config/kibana.yml +++ b/config/kibana.yml @@ -19,7 +19,7 @@ # that connects to this Kibana instance. # elasticsearch.preserveHost: true -# Kibana uses an index in Elasticsearch to store saved searches, visualizations and +# Kibana uses an index in Elasticsearch to store saved searches, visualizations and # dashboards. Kibana creates a new index if the index doesn’t already exist. # kibana.index: ".kibana" @@ -28,12 +28,12 @@ # If your Elasticsearch is protected with basic authentication, these settings provide # the username and password that the Kibana server uses to perform maintenance on the Kibana -# index at startup. Your Kibana users still need to authenticate with Elasticsearch, which +# index at startup. Your Kibana users still need to authenticate with Elasticsearch, which # is proxied through the Kibana server. # elasticsearch.username: "user" # elasticsearch.password: "pass" -# Paths to the PEM-format SSL certificate and SSL key files, respectively. These +# Paths to the PEM-format SSL certificate and SSL key files, respectively. These # files enable SSL for outgoing requests from the Kibana server to the browser. # server.ssl.cert: /path/to/your/server.crt # server.ssl.key: /path/to/your/server.key @@ -43,7 +43,7 @@ # elasticsearch.ssl.cert: /path/to/your/client.crt # elasticsearch.ssl.key: /path/to/your/client.key -# Optional setting that enables you to specify a path to the PEM file for the certificate +# Optional setting that enables you to specify a path to the PEM file for the certificate # authority for your Elasticsearch instance. # elasticsearch.ssl.ca: /path/to/your/CA.pem @@ -54,7 +54,7 @@ # the elasticsearch.requestTimeout setting. # elasticsearch.pingTimeout: 1500 -# Time in milliseconds to wait for responses from the back end or Elasticsearch. This value +# Time in milliseconds to wait for responses from the back end or Elasticsearch. This value # must be a positive integer. # elasticsearch.requestTimeout: 30000 @@ -76,6 +76,10 @@ # Set the value of this setting to true to suppress all logging output other than error messages. # logging.quiet: false -# Set the value of this setting to true to log all events, including system usage information +# Set the value of this setting to true to log all events, including system usage information # and all requests. # logging.verbose: false + +# Set the interval in milliseconds to sample system and process performance +# metrics. Minimum is 100ms. Defaults to 10000. +# ops.interval: 10000 diff --git a/docs/kibana-yml.asciidoc b/docs/kibana-yml.asciidoc index 310ca2005f00..3e0e4ded41a8 100644 --- a/docs/kibana-yml.asciidoc +++ b/docs/kibana-yml.asciidoc @@ -39,3 +39,4 @@ retrying. error messages. `logging.verbose`:: *Default: false* Set the value of this setting to `true` to log all events, including system usage information and all requests. +`ops.interval`:: *Default: 10000* Set the interval in milliseconds to sample system and process performance metrics. Minimum is 100ms. Defaults to 10 seconds. diff --git a/docs/x-axis-aggs.asciidoc b/docs/x-axis-aggs.asciidoc index a39eb8a48a20..802625b0afac 100644 --- a/docs/x-axis-aggs.asciidoc +++ b/docs/x-axis-aggs.asciidoc @@ -28,7 +28,7 @@ remove a range. or bottom _n_ elements of a given field to display, ordered by count or a custom metric. *Filters*:: You can specify a set of {ref}/search-aggregations-bucket-filters-aggregation.html[_filters_] for the data. You can specify a filter as a query string or in JSON format, just as in the Discover search bar. Click *Add Filter* to -add another filter. Click the images:labelbutton.png[] *label* button to open the label field, where you can type in a +add another filter. Click the image:images/labelbutton.png[] *label* button to open the label field, where you can type in a name to display on the visualization. *Significant Terms*:: Displays the results of the experimental {ref}/search-aggregations-bucket-significantterms-aggregation.html[_significant terms_] aggregation. diff --git a/package.json b/package.json index c4e6ba5202e2..54d63bb954fc 100644 --- a/package.json +++ b/package.json @@ -87,9 +87,9 @@ "babel-runtime": "5.8.20", "bluebird": "2.9.34", "boom": "2.8.0", - "bootstrap": "3.3.5", + "bootstrap": "3.3.6", "brace": "0.5.1", - "bunyan": "1.4.0", + "bunyan": "1.7.1", "clipboard": "1.5.5", "commander": "2.8.1", "css-loader": "0.17.0", @@ -156,7 +156,7 @@ "grunt-cli": "0.1.13", "grunt-contrib-clean": "0.6.0", "grunt-contrib-copy": "0.8.1", - "grunt-esvm": "2.1.1", + "grunt-esvm": "3.0.3", "grunt-karma": "0.12.0", "grunt-run": "0.5.0", "grunt-s3": "0.2.0-alpha.3", @@ -174,7 +174,6 @@ "karma-ie-launcher": "0.2.0", "karma-mocha": "0.2.0", "karma-safari-launcher": "0.1.1", - "libesvm": "3.3.0", "license-checker": "3.1.0", "load-grunt-config": "0.7.2", "makelogs": "3.0.0-beta3", diff --git a/src/plugins/elasticsearch/index.js b/src/plugins/elasticsearch/index.js index b9debc020ec6..76a44285d9ef 100644 --- a/src/plugins/elasticsearch/index.js +++ b/src/plugins/elasticsearch/index.js @@ -54,7 +54,7 @@ module.exports = function ({ Plugin }) { return reply.continue(); } - function noCreateIndex({ path }, reply) { + function noDirectIndex({ path }, reply) { const requestPath = trimRight(trim(path), '/'); const matchPath = createPath(kibanaIndex); @@ -75,7 +75,7 @@ module.exports = function ({ Plugin }) { ['PUT', 'POST', 'DELETE'], `/${kibanaIndex}/{paths*}`, { - pre: [ noCreateIndex, noBulkCheck ] + pre: [ noDirectIndex, noBulkCheck ] } ); diff --git a/src/plugins/elasticsearch/lib/__tests__/check_es_version.js b/src/plugins/elasticsearch/lib/__tests__/check_es_version.js index 51424a841af4..1c1ece01c412 100644 --- a/src/plugins/elasticsearch/lib/__tests__/check_es_version.js +++ b/src/plugins/elasticsearch/lib/__tests__/check_es_version.js @@ -1,7 +1,9 @@ import _ from 'lodash'; import Promise from 'bluebird'; import sinon from 'sinon'; +import url from 'url'; +import serverConfig from '../../../../../test/serverConfig'; import checkEsVersion from '../check_es_version'; describe('plugins/elasticsearch', function () { @@ -23,7 +25,7 @@ describe('plugins/elasticsearch', function () { status: { red: sinon.stub() }, - url: 'http://localhost:9210' + url: url.format(serverConfig.servers.elasticsearch) } } }; diff --git a/src/plugins/elasticsearch/lib/__tests__/health_check.js b/src/plugins/elasticsearch/lib/__tests__/health_check.js index 3292ba67abb0..5065e7bc59ce 100644 --- a/src/plugins/elasticsearch/lib/__tests__/health_check.js +++ b/src/plugins/elasticsearch/lib/__tests__/health_check.js @@ -1,9 +1,15 @@ import Promise from 'bluebird'; import sinon from 'sinon'; import expect from 'expect.js'; +import url from 'url'; + const NoConnections = require('elasticsearch').errors.NoConnections; import healthCheck from '../health_check'; +import serverConfig from '../../../../../test/serverConfig'; + +const esPort = serverConfig.servers.elasticsearch.port; +const esUrl = url.format(serverConfig.servers.elasticsearch); describe('plugins/elasticsearch', function () { describe('lib/health_check', function () { @@ -39,7 +45,7 @@ describe('plugins/elasticsearch', function () { nodes: { 'node-01': { version: '1.5.0', - http_address: 'inet[/127.0.0.1:9210]', + http_address: `inet[/127.0.0.1:${esPort}]`, ip: '127.0.0.1' } } @@ -73,7 +79,7 @@ describe('plugins/elasticsearch', function () { it('should set the cluster red if the ping fails, then to green', function () { - get.withArgs('elasticsearch.url').returns('http://localhost:9210'); + get.withArgs('elasticsearch.url').returns(esUrl); get.withArgs('elasticsearch.engineVersion').returns('^1.4.4'); get.withArgs('kibana.index').returns('.my-kibana'); client.ping.onCall(0).returns(Promise.reject(new NoConnections())); @@ -85,7 +91,7 @@ describe('plugins/elasticsearch', function () { expect(plugin.status.yellow.args[0][0]).to.be('Waiting for Elasticsearch'); sinon.assert.calledOnce(plugin.status.red); expect(plugin.status.red.args[0][0]).to.be( - 'Unable to connect to Elasticsearch at http://localhost:9210.' + `Unable to connect to Elasticsearch at ${esUrl}.` ); sinon.assert.calledTwice(client.ping); sinon.assert.calledOnce(client.nodes.info); @@ -97,7 +103,7 @@ describe('plugins/elasticsearch', function () { }); it('should set the cluster red if the health check status is red, then to green', function () { - get.withArgs('elasticsearch.url').returns('http://localhost:9210'); + get.withArgs('elasticsearch.url').returns(esUrl); get.withArgs('elasticsearch.engineVersion').returns('^1.4.4'); get.withArgs('kibana.index').returns('.my-kibana'); client.ping.returns(Promise.resolve()); @@ -120,7 +126,7 @@ describe('plugins/elasticsearch', function () { }); it('should set the cluster yellow if the health check timed_out and create index', function () { - get.withArgs('elasticsearch.url').returns('http://localhost:9210'); + get.withArgs('elasticsearch.url').returns(esUrl); get.withArgs('elasticsearch.engineVersion').returns('^1.4.4'); get.withArgs('kibana.index').returns('.my-kibana'); client.ping.returns(Promise.resolve()); diff --git a/src/plugins/kibana/public/dashboard/index.html b/src/plugins/kibana/public/dashboard/index.html index 9a3f94fa3832..6a4353e0bc29 100644 --- a/src/plugins/kibana/public/dashboard/index.html +++ b/src/plugins/kibana/public/dashboard/index.html @@ -1,6 +1,6 @@