Go to file
Tiago Costa 6d5c8caadc
Adds support for log rotation (#49750)
* chore(NA): add log options to config yml

* chore(NA): remove unwanted option from config declaration

* chore(NA): add the bootstrap for the logging rotate feature

* feat(NA): base interface setup for log rotation feature

* docs(NA): add documentation for the new logging rotate options. chore(NA): added new schema validations

* chore(NA): base lifecycle methods and logic

* feat(NA): monitor logic for log rotate feature

* fix(NA): basic log rotation lifecycle

* chore(NA): fix typo on config file

* feat(NA): add rotate files feature to log rotator

* chore(NA): fix log rotate config

* chore(NA): some tests to try logging rotate lifecycle

* feat(NA): correct log rotation logic

* fix(NA): lifecycle for the log rotator

* test(NA): add a test case

* chore(NA): correctly add the new defaults to the config schema

* test(NA): change dir generation for test

* chore(NA): mock log rotate for logging service test

* test(NA): fix temp dir permission issue

* test(NA): try to fix test

* chore(NA): remove usage of mkdtemp

* refact(NA): feature logging rotation reimplementation in order to make it work across platforms

* fix(NA): bug on file size monitor handle

* fix(NA): remove wrong commented out code

* chore(NA): correctly identify if we should use polling

* chore(NA): fix some code comment

* refact(NA): minor implementation details

* chore(NA): change the order of logging mix

* test(NA): add some more test cases

* test(NA): add the majority of the test cases

* test(NA): add last test case

* test(NA): fallback conditions

* chore(NA): add logging rotate config keys to the docker image

* chore(NA): move logging.rotate.enable setting to enabled

* chore(NA): clarify documentation for logging rotate

* chore(NA): use regular instead of logWithMetadata

* chore(NA): move chokidar to a prod dep

* chore(NA): add log explaining why we had fallback to use polling

* test(NA): fix unit tests

* test(NA): fix unit tests

* chore(NA): correctly place this.running condition

* chore(NA): remove redundant call

* fix(NA): log filename containing numbers would produce invalid sorting

* chore(NA): remove existsSync function call from readRotatedFilesMetadata function

* chore(NA): Update docs/setup/settings.asciidoc

Co-Authored-By: Tyler Smalley <tylersmalley@me.com>

* chore(NA): Update docs/setup/settings.asciidoc

Co-Authored-By: Tyler Smalley <tylersmalley@me.com>

* chore(NA): Update docs/setup/settings.asciidoc

Co-Authored-By: Tyler Smalley <tylersmalley@me.com>

* chore(NA): Update docs/setup/settings.asciidoc

Co-Authored-By: Tyler Smalley <tylersmalley@me.com>

* chore(na): update src/legacy/server/logging/rotate/index.js

Co-Authored-By: Tyler Smalley <tylersmalley@me.com>

* chore(NA): remove unused config line from docker vars

* chore(NA): update documentation to include info about non exact limits

* chore(NA): remove redudant if clause

* fix(NA): correctly work with new keepFiles limit after start

* fix(NA): warning log for logging rotate

* chore(NA): replace logwithmetadate with log

* docs(NA): correct log to right terms

* docs(NA): add comment about usage of slice(-1)

* refact(NA): changing polling interval from seconds to milliseconds

* docs(NA): fix comments for shouldRotate method

* chore(NA): update src/legacy/server/logging/rotate/log_rotator.js

Co-Authored-By: Mikhail Shustov <restrry@gmail.com>

* chore(NA): update src/legacy/server/logging/rotate/log_rotator.js

Co-Authored-By: Mikhail Shustov <restrry@gmail.com>

* refact(NA): small change

* refact(NA): bound stop

* refact(NA): shouldUsePolling test function

* refact(NA): move named truncate function to delete

* refact(NA): typescript conversion

* chore(NA): type update for log rotation index file

* docs(NA): add experimental tag on docs

* chore(NA): add call protection of clearTimeout

* refact(NA): cleanup comments and wrong added logs plus inline config

* chore(NA): replace ts-ignore by non null assertion operator

* docs(NA): extend documentation for _renameRotatedFilesByOne call

* chore(NA): fix type problems for process.emit on nodejs
2019-12-10 01:32:20 +00:00
.ci ci(jenkins): enable APM UI e2e tests (#48109) 2019-12-05 13:55:43 +00:00
.github add codeowners for legacy server folder (#52158) 2019-12-06 08:23:48 +01:00
bin
common/graphql
config Instrument Kibana with Elastic APM (#43548) 2019-12-04 15:21:07 +01:00
data
docs Adds support for log rotation (#49750) 2019-12-10 01:32:20 +00:00
licenses
packages remove remaining idx usage (#52354) 2019-12-09 15:59:07 -07:00
rfcs Update deprecated React.SFC and React.StatelessComponent types (#50852) 2019-11-21 20:53:54 +01:00
scripts Instrument Kibana with Elastic APM (#43548) 2019-12-04 15:21:07 +01:00
src Adds support for log rotation (#49750) 2019-12-10 01:32:20 +00:00
style_guides Updating accessibility guide and contributing readmes (#52038) 2019-12-04 19:11:16 -06:00
tasks chore(NA): fix licenses task on grunt test task (#51444) 2019-12-03 16:09:47 -07:00
test Support nested fields in existing filter types (#49537) 2019-12-09 14:16:15 -05:00
typings [State Management] Typescripify, jestify, simplify state_hashing and state_storage (#51835) 2019-12-04 12:36:03 +01:00
utilities Clean up uses of deprecated API's in node core (#51431) 2019-12-04 16:17:19 +01:00
vars [ci/pipeline/reportFailures] when aborted, run with --no-github-update (#52355) 2019-12-06 12:27:06 -07:00
webpackShims Add lru-cache shim (#49014) 2019-10-23 12:56:00 -05:00
x-pack Denormalize actionTypeId into alert actions for easier filtering (#51628) 2019-12-09 19:30:42 -05:00
.backportrc.json
.browserslistrc
.editorconfig
.eslintignore Move @kbn/es-query into data plugin (#51014) 2019-11-26 13:28:04 -07:00
.eslintrc.js fix linting errors in graph (#50907) 2019-12-03 15:44:37 +01:00
.gitattributes
.gitignore Instrument Kibana with Elastic APM (#43548) 2019-12-04 15:21:07 +01:00
.i18nrc.json ui/management -> new platform (#45747) 2019-12-09 11:56:51 -06:00
.node-version
.nvmrc
.prettierrc
.sass-lint.yml Move query utils ⇒ NP (#49636) 2019-11-14 13:06:36 +02:00
.yarnrc
CONTRIBUTING.md Add example apm.dev.js config file to CONTRIBUTING.md (#52206) 2019-12-05 14:45:44 +01:00
FAQ.md
github_checks_reporter.json
Gruntfile.js
Jenkinsfile Add PR comments to pipeline (#51504) 2019-12-03 18:06:30 -05:00
kibana.d.ts
LICENSE.txt
NOTICE.txt remove remaining idx usage (#52354) 2019-12-09 15:59:07 -07:00
package.json Adds support for log rotation (#49750) 2019-12-10 01:32:20 +00:00
preinstall_check.js
README.md chore: point issue links to choose (#49616) 2019-10-29 15:54:27 +01:00
renovate.json5 Swap renovate codeowners with assignee configuration (#48987) 2019-11-25 09:38:49 -06:00
STYLEGUIDE.md Upgrade to TypeScript 3.7.2 (#47188) 2019-11-15 10:33:29 +01:00
tsconfig.browser.json
tsconfig.json
tsconfig.types.json
TYPESCRIPT.md Update deprecated React.SFC and React.StatelessComponent types (#50852) 2019-11-21 20:53:54 +01:00
yarn.lock Upgrade typescript-eslint to 2.10.0 (#52528) 2019-12-09 19:49:15 +01: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.