Skip to content

Kibana

September 29, 2023
August 3, 2015

Kibana

Kibana: Explore, Visualize, Discover Data | Elastic
Kibana User Guide | Elastic
Elasticsearch Graph | Elastic
elastic/kibana: Kibana analytics and search dashboard for Elasticsearch

Visualizations are saved as Panels, a Dashboard is comprised of Panels.

Importing Existing Beat Dashboards | Beats Platform Reference | Elastic

Tag that Cloud | Elastic 5.1
New Kibana Visualizations: Heatmap and Point Series | Elastic 5.4
Kibana under the hood: object persistence | Elastic

Sense is an interactive UI for Elastic search. It was ported as Console Plugin in Kibana 5 and later integrated as part of Kibana.

sivasamyk/logtrail: Kibana plugin to view, search & live tail log events
wardviaene/kibana-logtrail - Docker Hub

Creating Custom Kibana Visualizations: A How-To Guide
Componentizing the Kibana UI, part 1: CSS that Scales | Elastic
Componentizing the Kibana UI, part 2: JavaScript with React | Elastic
Thousands of Color-coded Visualizations in React | Elastic

How To Use Kibana Dashboards and Visualizations | DigitalOcean

Internals

Kibana under the hood: object persistence | Elastic

kibana create index pattern api - Google Search
Create Indices pattern through commnadline - Kibana - Discuss the Elastic Stack

Timeseries

Timelion: The time series composer for Kibana | Elastic
Computation near the visualization layer | Elastic
Normalizing sparse time series with Timelion | Elastic
Getting Started with Time Series Analysis in Kibana | Elastic
Kibana Time Series Visual Builder | Elastic
Kibana's New Time Series Visual Builder - Part 2 | Elastic
Mining Earthquake Data with Kibana 5 and Timelion | Elastic

Index pattern

We have to register index pattern in Kibana before we can visualize it.
We do this by directly adding to the .kibana index in Elasticsearch.
Index pattern creation API 路 Issue #3709 路 elastic/kibana
Load dashboards from filesystem 路 Issue #2310 路 elastic/kibana
Create an Ingest API by Bargs 路 Pull Request #5213 路 elastic/kibana

http -b http://elasticsearch:9200/.kibana/index-pattern

curl -XPOST -H 'Content-Type: application/json' 'http://elasticsearch:9200/.kibana/index-pattern/filebeat-*' -d'{"title":"filebeat-*","timeFieldName":"@timestamp","notExpandable":true}'

http --print HhBb POST "http://elasticsearch:9200/.kibana/index-pattern/dockbeat-*" << EOF
{"title":"dockbeat-*","timeFieldName":"@timestamp","notExpandable":true}
EOF

For kibana 6.0 using curl and jq:

url="http://localhost:5601"
index_pattern="logstash-*"
time_field="@timestamp"
# Create index pattern and get the created id
# curl -f to fail on error
id=$(curl -f -XPOST -H "Content-Type: application/json" -H "kbn-xsrf: anything" \
  "$url/api/saved_objects/index-pattern" \
  -d"{\"attributes\":{\"title\":\"$index_pattern\",\"timeFieldName\":\"$time_field\"}}" \
  | jq -r '.id')
# Create the default index
curl -XPOST -H "Content-Type: application/json" -H "kbn-xsrf: anything" \
  "$url/api/kibana/settings/defaultIndex" \
  -d"{\"value\":\"$id\"}"

Alternative

Reactivesearch - React and React Native UI components for Elasticsearch
Reactive Manual - React components for building Search UIs
How to Build an E-commerce Search UI with React and Elasticsearch
Components - InnerSearch : Vue.js components for ElasticSearch