diff --git a/docs/index.asciidoc b/docs/index.asciidoc index e2a85ee48c87..ac9fff2a5ec7 100644 --- a/docs/index.asciidoc +++ b/docs/index.asciidoc @@ -11,6 +11,8 @@ include::setup.asciidoc[] include::getting-started.asciidoc[] +include::plugins.asciidoc[] + include::access.asciidoc[] include::discover.asciidoc[] diff --git a/docs/plugins.asciidoc b/docs/plugins.asciidoc new file mode 100644 index 000000000000..c4b0087cd0eb --- /dev/null +++ b/docs/plugins.asciidoc @@ -0,0 +1,122 @@ +[[kibana-plugins]] +== Kibana Plugins + +Add-on functionality for Kibana is implemented with plug-in modules. You can use the `bin/kibana plugin` +command to manage these modules. You can also install a plugin manually by moving the plugin file to the +`installedPlugins` directory and unpacking the plugin files into a new directory. + +[float] +=== Installing Plugins + +Use the following command to install a plugin: + +[source,shell] +bin/kibana plugin --install // + +You can also use `-i` instead of `--install`, as in the following example: + +[source,shell] +bin/kibana plugin -i elasticsearch/marvel-ui/latest + +Because the organization given is `elasticsearch`, the plugin management tool automatically downloads the +plugin from `download.elastic.co`. + +[float] +=== Installing Plugins from Github + +When the specified plugin is not found at `download.elastic.co`, the plugin management tool parses the element +as a Github user name, as in the following example: + +[source,shell] +bin/kibana plugin --install github-user/sample-plugin +Installing sample-plugin +Attempting to extract from https://download.elastic.co/github-user/sample-plugin/sample-plugin-latest.tar.gz +Attempting to extract from https://github.com/github-user/sample-plugin/archive/master.tar.gz +Downloading bytes.................... +Extraction complete +Optimizing and caching browser bundles... +Plugin installation complete + +[float] +=== Installing Plugins from an Arbitrary URL + +You can specify a URL to a plugin with the `-u` or `--url` options after the `-i` or `--install` option, as in the +following example: + +[source,shell] +bin/kibana plugin -i sample-plugin -u https://some.sample.url/directory +Installing sample-plugin +Attempting to extract from https://some.sample.url/directory +Downloading bytes.................... +Extraction complete +Optimizing and caching browser bundles... +Plugin installation complete + +You can specify URLs that use the HTTP, HTTPS, or `file` protocols. + +[float] +=== Installing Plugins to an Arbitrary Directory + +Use the `-d` or `--plugin-dir` option to specify a directory for plugins, as in the following example: + +[source,shell] +bin/kibana plugin -i elasticsearch/sample-plugin/latest -d +Installing sample-plugin +Attempting to extract from https://download.elastic.co/elasticsearch/sample-plugin/sample-plugin-latest.tar.gz +Downloading bytes.................... +Extraction complete +Optimizing and caching browser bundles... +Plugin installation complete + +NOTE: This command creates the specified directory if it does not already exist. + +[float] +=== Removing Plugins + +Use the `--remove` or `-r` option to remove a plugin, including any configuration information, as in the following +example: + +[source,shell] +bin/kibana plugin --remove marvel-ui + +You can also remove a plugin manually by deleting the plugin's subdirectory under the `installedPlugins` directory. + +[float] +=== Updating Plugins + +To update a plugin, remove the current version and reinstall the plugin. + +[float] +=== Configuring the Plugin Manager + +By default, the plugin manager provides you with feedback on the status of the activity you've asked the plugin manager +to perform. You can control the level of feedback with the `--quiet` and `--silent` options. Use the `--quiet` option to +suppress all non-error output. Use the `--silent` option to suppress all output. + +By default, plugin manager requests do not time out. Use the `--timeout` option, followed by a time, to change this +behavior, as in the following examples: + +[source,shell] +.Waits for 30 seconds before failing +bin/kibana plugin --install username/sample-plugin --timeout 30s + +[source,shell] +.Waits for 1 minute before failing +bin/kibana plugin --install username/sample-plugin --timeout 1m + +[float] +==== Plugins and Custom Kibana Configurations + +Use the `-c` or `--config` options to specify the path to the configuration file used to start Kibana. By default, Kibana +uses the configuration file `config/kibana.yml`. When you change your installed plugins, the `bin/kibana plugin` command +restarts the Kibana server. When you are using a customized configuration file, you must specify the +path to that configuration file each time you use the `bin/kibana plugin` command. + +[float] +=== Plugin Manager Exit Codes + +[horizontal] +0:: Success +64:: Unknown command or incorrect option parameter +74:: I/O error +70:: Other error diff --git a/package.json b/package.json index b48883b2ad16..354c78b7d204 100644 --- a/package.json +++ b/package.json @@ -55,6 +55,7 @@ "@spalger/filesaver": "1.1.2", "@spalger/leaflet-draw": "0.2.3", "@spalger/leaflet-heat": "0.1.3", + "@spalger/numeral": "^2.0.0", "@spalger/nvd3": "1.8.1", "@spalger/ui-ace": "0.2.3", "angular": "1.2.28", @@ -105,7 +106,6 @@ "mkdirp": "0.5.1", "moment": "2.10.6", "ng-clip": "0.2.6", - "numeral": "1.5.3", "raw-loader": "0.5.1", "request": "2.61.0", "requirefrom": "0.2.0", diff --git a/src/server/logging/LogFormat.js b/src/server/logging/LogFormat.js index 233e1f86f49c..db901d2ecc90 100644 --- a/src/server/logging/LogFormat.js +++ b/src/server/logging/LogFormat.js @@ -1,7 +1,7 @@ let Stream = require('stream'); let moment = require('moment'); let _ = require('lodash'); -let numeral = require('numeral'); +let numeral = require('@spalger/numeral'); let ansicolors = require('ansicolors'); let stringify = require('json-stringify-safe'); let querystring = require('querystring'); diff --git a/tasks/config/esvm.js b/tasks/config/esvm.js index ad622140bdf9..597270ee2bb1 100644 --- a/tasks/config/esvm.js +++ b/tasks/config/esvm.js @@ -11,6 +11,9 @@ module.exports = function (grunt) { network: { host: '127.0.0.1' }, + http: { + port: 9200 + }, marvel: { agent: { enabled: false diff --git a/webpackShims/numeral.js b/webpackShims/numeral.js new file mode 100644 index 000000000000..71326a840d72 --- /dev/null +++ b/webpackShims/numeral.js @@ -0,0 +1 @@ +module.exports = require('@spalger/numeral');