- Kibana Guide: other versions:
- What is Kibana?
- What’s new in 8.16
- Kibana concepts
- Quick start
- Set up
- Install Kibana
- Configure Kibana
- Alerting and action settings
- APM settings
- Banners settings
- Cases settings
- Enterprise Search settings
- Fleet settings
- i18n settings
- Logging settings
- Logs settings
- Metrics settings
- Monitoring settings
- Reporting settings
- Search sessions settings
- Secure settings
- Security settings
- Spaces settings
- Task Manager settings
- Telemetry settings
- URL drilldown settings
- Start and stop Kibana
- Access Kibana
- Securing access to Kibana
- Add data
- Upgrade Kibana
- Configure security
- Configure reporting
- Configure logging
- Configure monitoring
- Command line tools
- Production considerations
- Discover
- Dashboards
- Canvas
- Maps
- Build a map to compare metrics by country or region
- Track, visualize, and alert on assets in real time
- Map custom regions with reverse geocoding
- Heat map layer
- Tile layer
- Vector layer
- Plot big data
- Search geographic data
- Configure map settings
- Connect to Elastic Maps Service
- Import geospatial data
- Troubleshoot
- Reporting and sharing
- Machine learning
- Graph
- Alerting
- Observability
- Search
- Security
- Dev Tools
- Fleet
- Osquery
- Stack Monitoring
- Stack Management
- Cases
- Connectors
- Amazon Bedrock
- Cases
- CrowdStrike
- D3 Security
- Google Gemini
- IBM Resilient
- Index
- Jira
- Microsoft Teams
- Observability AI Assistant
- OpenAI
- Opsgenie
- PagerDuty
- SentinelOne
- Server log
- ServiceNow ITSM
- ServiceNow SecOps
- ServiceNow ITOM
- Swimlane
- Slack
- TheHive
- Tines
- Torq
- Webhook
- Webhook - Case Management
- xMatters
- Preconfigured connectors
- License Management
- Maintenance windows
- Manage data views
- Numeral Formatting
- Rollup Jobs
- Manage saved objects
- Security
- Spaces
- Advanced Settings
- Tags
- Upgrade Assistant
- Watcher
- REST API
- Get features API
- Kibana spaces APIs
- Kibana role management APIs
- User session management APIs
- Saved objects APIs
- Data views API
- Index patterns APIs
- Alerting APIs
- Action and connector APIs
- Cases APIs
- Import and export dashboard APIs
- Logstash configuration management APIs
- Machine learning APIs
- Osquery manager API
- Short URLs APIs
- Get Task Manager health
- Upgrade assistant APIs
- Synthetics APIs
- Uptime APIs
- Kibana plugins
- Troubleshooting
- Accessibility
- Release notes
- Upgrade notes
- Kibana 8.16.4
- Kibana 8.16.3
- Kibana 8.16.2
- Kibana 8.16.1
- Kibana 8.16.0
- Kibana 8.15.5
- Kibana 8.15.4
- Kibana 8.15.3
- Kibana 8.15.2
- Kibana 8.15.1
- Kibana 8.15.0
- Kibana 8.14.3
- Kibana 8.14.2
- Kibana 8.14.1
- Kibana 8.14.0
- Kibana 8.13.4
- Kibana 8.13.3
- Kibana 8.13.2
- Kibana 8.13.1
- Kibana 8.13.0
- Kibana 8.12.2
- Kibana 8.12.1
- Kibana 8.12.0
- Kibana 8.11.4
- Kibana 8.11.3
- Kibana 8.11.2
- Kibana 8.11.1
- Kibana 8.11.0
- Kibana 8.10.4
- Kibana 8.10.3
- Kibana 8.10.2
- Kibana 8.10.1
- Kibana 8.10.0
- Kibana 8.9.2
- Kibana 8.9.1
- Kibana 8.9.0
- Kibana 8.8.2
- Kibana 8.8.1
- Kibana 8.8.0
- Kibana 8.7.1
- Kibana 8.7.0
- Kibana 8.6.1
- Kibana 8.6.0
- Kibana 8.5.2
- Kibana 8.5.1
- Kibana 8.5.0
- Kibana 8.4.3
- Kibana 8.4.2
- Kibana 8.4.1
- Kibana 8.4.0
- Kibana 8.3.3
- Kibana 8.3.2
- Kibana 8.3.1
- Kibana 8.3.0
- Kibana 8.2.3
- Kibana 8.2.2
- Kibana 8.2.1
- Kibana 8.2.0
- Kibana 8.1.3
- Kibana 8.1.2
- Kibana 8.1.1
- Kibana 8.1.0
- Kibana 8.0.0
- Kibana 8.0.0-rc2
- Kibana 8.0.0-rc1
- Kibana 8.0.0-beta1
- Kibana 8.0.0-alpha2
- Kibana 8.0.0-alpha1
- Developer guide
Getting started
editGetting started
editGet started building your own plugins, or contributing directly to the Kibana repo.
Developing on Windows
editWe do not support Windows native development anymore and in order to develop Kibana on Windows please setup a WSL environment which will give you a much better experience. In addition to that you will also benefit from run GUI apps on WSL like Chrome for test and debug purposes. Once completed, follow the rest of this guide inside the WSL.
Get the code
editFork, then clone the Kibana repo and change directory into it:
git clone https://github.com/[YOUR_USERNAME]/kibana.git kibana cd kibana
Install dependencies
editInstall the version of Node.js listed in the .node-version
file. This
can be automated with tools such as
nvm or
avn. As we also include a .nvmrc
file
you can switch to the correct version when using nvm by running:
nvm use
Install the latest version of yarn v1.
Bootstrap Kibana and install all the dependencies:
yarn kbn bootstrap
Node.js native modules could be in use and node-gyp is the tool used to build them. There are tools you need to install per platform and python versions you need to be using. Please see https://github.com/nodejs/node-gyp#installation and follow the guide according your platform.
In case you don’t have an internet connection, the yarn kbn bootstrap
command will
fail. As it is likely you have the required node_modules in the
offline mirror, you can try to run the step in offline mode by using:
yarn kbn bootstrap --offline
In any other circumstance where you want to force the node_modules install step you can use:
yarn kbn bootstrap --force-install
You can also run yarn kbn
to see the other available commands.
When switching branches which use different versions of npm packages you may need to run:
yarn kbn clean
Running this command is only necessary in rare circumstance where you need to recover a consistent state when problems arise. If you need to run this command often, complete this form to provide feedback: https://ela.st/yarn-kbn-clean
If you have failures during yarn kbn bootstrap
you may have some
corrupted packages in your yarn cache which you can clean with:
yarn cache clean
Configure environmental settings
editIncrease node.js heap size
editKibana is a big project and for some commands it can happen that the
process hits the default heap limit and crashes with an out-of-memory
error. If you run into this problem, you can increase maximum heap size
by setting the --max_old_space_size
option on the command line. To set
the limit for all commands, simply add the following line to your shell
config: export NODE_OPTIONS="--max_old_space_size=2048"
.
Run Elasticsearch
editRun the latest Elasticsearch snapshot. Specify an optional license with the --license
flag.
yarn es snapshot --license trial
trial
will give you access to all capabilities.
Read about more options for Running Elasticsearch during development, like connecting to a remote host, running from source, preserving data inbetween runs, running remote cluster, etc.
Run Kibana
editIn another terminal window, start up Kibana. Include developer examples by adding an optional --run-examples
flag.
yarn start --run-examples
View all available options by running yarn start --help
Read about more advanced options for Running Kibana.
Install pre-commit hook (optional)
editIn case you want to run a couple of checks like linting or check the file casing of the files to commit, we provide a way to install a pre-commit hook. To configure it you just need to run the following:
node scripts/register_git_hook
After the script completes the pre-commit hook will be created within the file .git/hooks/pre-commit
.
If you choose to not install it, don’t worry, we still run a quick ci check to provide feedback earliest as we can about the same checks.
Code away!
editYou are now ready to start developing. Changes to your files should be picked up automatically. Server side changes will cause the Kibana server to reboot.
More information
editOn this page