Go to file
Ryland Herrick 1afb0c476b
[Security Solution][Detections] Adoption telemetry (#71102)
* style: sort plugin interface

* WIP: UsageCollector for Security Adoption

This uses ML and raw ES calls to query our ML Jobs and Rules, and parse
them into a format to be consumed by telemetry.

Still to come:
* initialization
* tests

* Initialize usage collectors during plugin setup

* Rename usage key

The service seems to convert colons to underscores, so let's just use an
underscure.

* Collector is ready if we have a kibana index

* Refactor collector to generate options in a function

This allows us to test our adherence to the collector API, focusing
particularly on the fetch function.

* Refactor usage collector in anticipation of endpoint data

We're going to have our usage data under one key corresponding to the
app, so this nests the existing data under a 'detections' key while
allowing another fetching function to be plugged into the
main collector under a separate key.

* Update our collector to satisfy telemetry tooling

* inlines collector options
* inlines schema object
* makes DetectionsUsage an interface instead of a type alias

* Extracts telemetry mappings via scripts/telemetry_extract

* Refactor detections usage logic to perform one loop instead of two

We were previously performing two loops over each set of data: one to
format it down to just the data we need, and another to convert that
into usage data. We now perform both steps within a single loop.

* Refactor detections telemetry to be nested

* Extract new nested detections telemetry mappings

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-07-13 13:18:47 -05:00
.ci [build] Creates Linux aarch64 archive (#69165) 2020-07-09 19:42:48 -07:00
.github New Enterprise Search Kibana plugin (#66922) 2020-07-09 13:10:31 -07:00
common/graphql
config Node options from cfg file for production (#62468) 2020-07-13 16:30:03 +01:00
data [folder structure] plugins/.data -> data 2016-07-05 14:06:16 -05:00
docs Move kibana-keystore from data/ to config/ (#57856) 2020-07-13 10:56:25 -05:00
examples [kbn/optimizer] implement "requiredBundles" property of KP plugins (#70911) 2020-07-09 18:43:17 -07:00
licenses Migrate x-pack-kibana source to kibana 2018-04-24 13:48:10 -07:00
packages Upgrade EUI to v26.3.1 (#70243) 2020-07-09 19:51:45 -07:00
rfcs [rfc][skip-ci][reporting] Rendering API RFC (#64372) 2020-06-18 09:26:05 -07:00
scripts Bump backport to 5.5.1 (#71408) 2020-07-13 13:59:13 +02:00
src [TSVB] Add support for histogram type (#68837) 2020-07-13 09:51:43 -07:00
tasks Revert #64011 and subsequent fixes (#71137) 2020-07-08 13:05:12 -07:00
test skip flaky suite (#71501) 2020-07-13 19:13:38 +01:00
typings chore(NA): upgrade to lodash@4 (#69868) 2020-07-03 01:30:13 +01:00
utilities apply prettier styles 2020-05-22 09:08:58 +02:00
vars Revert #64011 and subsequent fixes (#71137) 2020-07-08 13:05:12 -07:00
webpackShims upgrade elastic/numeral and complete migration away from numeral (#68035) 2020-06-03 10:07:11 -07:00
x-pack [Security Solution][Detections] Adoption telemetry (#71102) 2020-07-13 13:18:47 -05:00
.backportrc.json Add master branch to backport config (#69893) 2020-06-25 14:00:45 +02:00
.browserslistrc build immutable bundles for new platform plugins (#53976) 2020-02-12 19:42:42 -07:00
.editorconfig [editorconfig] disable insert_final_newline for package.json 2019-04-18 09:44:17 -07:00
.eslintignore [build] Creates Linux aarch64 archive (#69165) 2020-07-09 19:42:48 -07:00
.eslintrc.js New Enterprise Search Kibana plugin (#66922) 2020-07-09 13:10:31 -07:00
.fossa.yml Adds FOSSA CLI configuration file (#70137) 2020-07-02 08:37:37 -07:00
.gitattributes [canvas] Color fixes + Storybook 5 (#34075) 2019-04-02 11:21:51 -05:00
.gitignore Node options from cfg file for production (#62468) 2020-07-13 16:30:03 +01:00
.i18nrc.json Move apm tutorial from apm plugin into apm_oss plugin (#66432) 2020-05-20 14:40:37 +03:00
.node-version Update Node.js to version 10.21.0 (#68059) 2020-06-05 08:31:59 +02:00
.nvmrc Update Node.js to version 10.21.0 (#68059) 2020-06-05 08:31:59 +02:00
.prettierrc Increase prettier line width to 100 (#20535) 2018-07-09 22:50:37 +02:00
.sass-lint.yml [Monitoring] SASS modularization (#68726) 2020-06-11 13:36:47 -07:00
.telemetryrc.json [Telemetry] Collector Schema (#64942) 2020-06-27 02:52:26 +03:00
.yarnrc [kbn-pm] Use yarn workspaces for dependencies (#24095) 2018-11-12 12:38:11 -06:00
api-documenter.json Normalize EOL symbol in platform docs (#56021) 2020-01-27 18:42:45 +01:00
CONTRIBUTING.md Improvements to our developer guide (#67764) 2020-07-13 10:47:01 -04:00
FAQ.md propose language changes (#10709) 2017-03-05 12:10:32 -05:00
github_checks_reporter.json
Gruntfile.js apply prettier styles 2020-05-22 09:08:58 +02:00
Jenkinsfile Revert #64011 and subsequent fixes (#71137) 2020-07-08 13:05:12 -07:00
kibana.d.ts Move src/legacy/server/index_patterns to data plugin (server) (Remove step) (#61618) 2020-04-02 12:53:14 +03:00
LICENSE.txt Migrate x-pack-kibana source to kibana 2018-04-24 13:48:10 -07:00
NOTICE.txt [Console] Added license headers to worker files (#69387) 2020-06-18 19:46:26 +02:00
package.json Node options from cfg file for production (#62468) 2020-07-13 16:30:03 +01:00
preinstall_check.js
README.md chore: point issue links to choose (#49616) 2019-10-29 15:54:27 +01:00
renovate.json5 chore(NA): upgrade to lodash@4 (#69868) 2020-07-03 01:30:13 +01:00
STYLEGUIDE.md Remove Kibana a11y guide in favor of EUI (#57021) 2020-02-07 10:55:29 -05:00
tsconfig.browser.json
tsconfig.json Bump jest related packages (#58095) 2020-06-20 21:05:09 +02:00
tsconfig.types.json [data.search.aggs]: Add AggConfig.toSerializedFieldFormat (#69114) 2020-06-24 07:52:21 -06:00
TYPESCRIPT.md
yarn.lock Fix TSVB table trend slope value (#71087) 2020-07-13 14:27:48 +02:00

Kibana

Kibana is your window into the Elastic Stack. Specifically, it's a browser-based analytics and search dashboard for Elasticsearch.

Getting Started

If you just want to try Kibana out, check out the Elastic Stack Getting Started Page to give it a whirl.

If you're interested in diving a bit deeper and getting a taste of Kibana's capabilities, head over to the Kibana Getting Started Page.

Using a Kibana Release

If you want to use a Kibana release in production, give it a test run, or just play around:

Building and Running Kibana, and/or Contributing Code

You might want to build Kibana locally to contribute some code, test out the latest features, or try out an open PR:

Documentation

Visit Elastic.co for the full Kibana documentation.

For information about building the documentation, see the README in elastic/docs.

Version Compatibility with Elasticsearch

Ideally, you should be running Elasticsearch and Kibana with matching version numbers. If your Elasticsearch has an older version number or a newer major number than Kibana, then Kibana will fail to run. If Elasticsearch has a newer minor or patch number than Kibana, then the Kibana Server will log a warning.

Note: The version numbers below are only examples, meant to illustrate the relationships between different types of version numbers.

Situation Example Kibana version Example ES version Outcome
Versions are the same. 5.1.2 5.1.2 💚 OK
ES patch number is newer. 5.1.2 5.1.5 ⚠️ Logged warning
ES minor number is newer. 5.1.2 5.5.0 ⚠️ Logged warning
ES major number is newer. 5.1.2 6.0.0 🚫 Fatal error
ES patch number is older. 5.1.2 5.1.0 ⚠️ Logged warning
ES minor number is older. 5.1.2 5.0.0 🚫 Fatal error
ES major number is older. 5.1.2 4.0.0 🚫 Fatal error

Questions? Problems? Suggestions?

  • If you've found a bug or want to request a feature, please create a GitHub Issue. Please check to make sure someone else hasn't already created an issue for the same topic.
  • Need help using Kibana? Ask away on our Kibana Discuss Forum and a fellow community member or Elastic engineer will be glad to help you out.