Simple Kibana table refresh data not changing - elasticsearch

I am very new to Elasticsearch and Kibana. I have setup an index with a number of documents that I want to monitor as a table on the dashboard.
The JSON documents stored in elastic search simply have four fields.
I created/saved a search on the discover tab with all four fields and then added that search to my dashboard.
I then set the auto refresh to every 5 seconds.
If I update an existing document the table does NOT change on the next refresh.
If I add/remove new documents to elasticsearch they appear/disappear in the table on the next refresh.
Table flickers every 5s so it is clearly re-rendering.
Examining the network traffic shows that the response to the query contains the new data.
Pressing the arrow drop-down next to the row in the table shows the correct data
Refreshing the entire page shows the new data
Am I missing something?

With Kibana 4.4.2 adding a Search to the Dashboard does not seem to update dynamically. This may or may not be by-design or a bug.
But thanks to the elasticsearch forums I did get this response.
Summary: Creating a table visualization and splitting the rows and adding each individual term as updates when the data changes.

Related

Kibana 7.11 - index-pattern export not showing any fields

I have created an index-patter in kibana (7.11) in the UI and i can see all the fields configured correctly. But when i go to Saved objects and export it, it doesn't contain any fields
{"attributes":{"fieldAttrs":"{}","fields":"[]"...
Is there something i am missing here?
I have another index-pattern created by journalbeat which exports correctly with all the configured fields.
Thanks
I have faced the same issue. Starting Kibana 7.11, index patterns as saved object contain no more field detail. The list of field is prepared on load.
Elastic added a changelog entry here finally:
In index pattern management - Refresh button removed as index pattern field lists are refreshed when index patterns are loaded, such as on page load or when moving between kibana apps

Elastic Search - Refresh Vs Transaction Log

I come across this statement from the linkhttps://www.elastic.co/guide/en/elasticsearch/guide/2.x/translog.html
The translog is also used to provide real-time CRUD. When you try to retrieve, update, or delete a document by ID, it first checks the translog for any recent changes before trying to retrieve the document from the relevant segment. This means that it always has access to the latest known version of the document, in real-time.
However, Elastic search claims that near real timesearch, documents will be searchable once refresh is finished. Is it that search query will look at transaction log first ?
Little confused, please guide me
CRUD is only when you try to...
retrieve, update, or delete a document by ID
So when you CRUD a document (implied by ID), then Elastic looks up the translog first before fetching the document from the low-level segment file.
Search is a different thing and documents will only be searchable once the refresh phase is finished.
So, that's why CRUD is real-time but search is near real-time.

Visualization & Dashboard return no results found, while discover tab successfully displays results?

I have a problem with Kibana: Dashboard and visualizations don't show any results!
As you can see in this screenshot, in the discover tab I get some results! Which means data exists in my index "as-*". right? But I used a trick in order to display this data :
1) I changed the range to "Today" ==> it shows no result found !
2) I clicked "New" button ==> then i get my data displayed!
Is there an other way "more proper" to get data displayed?
Then in the my dashboard (or visualization) I can't get any results!! even if the range is the same as discover tab!
I restarted Kibana ==> no changes!
I deleted as-* then I created it => no changes!
I'm using Curator to create daily index and logstash to index the data into ES!
I'm stuck here ! I ll be glad if you can help me figure it out !
Thank you very much!
I am fairly new to elasticsearch and Kibana, but here are three mistakes that I made in the past:
Are you using the correct index? Make sure that the index you have chosen for the logs that are displayed on the visualise page and for the actual visualisations is the same.
Correct timeperiod: does the time period you have chosen contain the data you are looking for? Or did you happen to have zero logs during that time?
Correct filters and aggregations: when you were making the visualisations, did they show any results? Or were they empty from the beginning? Maybe one of your filters or aggregations is wrong and it's excluding the results you're expecting to see.
Not sure if this is any help, hope you've sold the problem by now :)
If you can see information in "discover", it means that kibana has connected to the database, and that the database has information. You shouldn't have to click the "New" button to see information in the discover view. I believe the "New" button in the "discover" page is used to create a new search.
Maybe try zooming on the time period of the data on the "discover" page, or
try checking the systems logs to see if logstash is successfully pushing information to Elasticsearch.
With Kibana, dashboards are made up of visualisations, and visulations are made up of searches.
The "No results found" on the dashboard page, shown in your second page is due to the visualisation having no results. I guess you imported visulations into Kibana.
I hope that helps.

New Fields Not Visible in Kibana

I have Kibana 4.0.1 running on top of elasticsearch 1.4.4. It was very smooth and virtually had no setup time. Suddenly I have run into a problem.
If I add a new field in my elasticsearch index, it's not visible in fields section. I can still query on that field in discover section. But, I can't make a graph based on the new field as it's not visible in fields list.
Kibana apparently fetches _mapping at the time of setup and stores it in elasticsearch index named .kibana. Once done, it never changes that. Deleting this index should load fresh _mapping from elasticsearch. But I don't want to lose all the saved dashboards and visualizations.
Is there a was to force Kibana to load fresh mapping at regular interval?
Yes in the settings tab you can refresh the index. Check the yellow refresh botton in the image below.

Seeing latest results in Kibana after the page limit is reached

I am new to logstash. I have set up my logstash to populate elastic search and have Kibana read out of it. The problem I am facing is that after the
number of records = results per page x page limit
the UI stops getting new results. Is there a way to set Kibana up such that it discards the old results instead of the latest after the limit is reached?
To have kibana read the latest results, reload the query.
To have more pages available (or more results per page), edit the panel.
Make sure the table is reverse sorted by #timestamp.

Resources