I've been debugging Elasticsearch clusters for years, and I got tired of jumping between _cat APIs, and terminal tabs just to check cluster health. So I built a lightweight Chrome extension that surfaces the metrics I actually care about right from the browser toolbar. No agents, no setup overhead.
I'm sharing some of the metrics and insights below.
indexing rate/latency & search rate/latency
cluster status
node stats
JVM heap
Active HTTP traffic
long running tasks (reindex, update by query, etc)
Slow search detection (with auto collect and profile aka. diagnose)
It's called Searchali Monitoring (Elasticsearch Performance Monitoring) and I'd genuinely love feedback from people who live in ES clusters daily. Happy to answer questions or take feature requests here.
Ive installed it and the first thing which I note is that for every indicie it gives you an index rate and search rate per second so you can immediately see where data is going etc very quickly. I haven't found this in elasticsearch/kibana GUI anywhere but I'm a beginner in this space so may be somewhere. Anyway this is good.
Thank you so much for your feedback @geoffrey. I'm glad to hear you like the product.
indexing rate/latency and search rate/latency metrics also available in stack monitoring and AutoOps, but you should install an agent. Also in stack monitoring you should keep the data on your own cluster.
I notice in the screen for SHARD information that it is trying to display a fixed number of indicies irrespective of screen width. This means you can end up doing a lot of scrolling left and right on each page of indicie information. If it was able to dynamically determine how many indicies it can display (with no left-right scroll bar needed) I reckon this would be better as you now only have to only move pages forward and back.
I see in the p0 and r0 boxes you colour the background based on activity on the indicie in question. I would say that it is quite hard to pick this background colour up. If you used a bit different colour for the background it would probably be more noticeable. When in dark mode the colour is very similar to the background anyway.
This may be because I have too little index activity to show your colour intentions well.
hmm, good idea to make the colour more appeared. I'll check that. Thanks for your feedback.
Regarding to adding the extension to edge browser, it's on the roadmap. Whenever I saw a real potential in edge browser I'll add it. Just fyi, the number of users is less than %10 when you compare the chrome users
In regards to the CLUSTER stats it does a nice little summary of the transforms but in the description field it adds "data_frame_" to the beginning of the names of the transforms. This means that the identification of which transform is being referenced is not immediately obvious - you need to hover over the description to get the full name:
I used to be a chrome user for quite some time but 2 years ago changed to edge. This was in part because of the RAM consumption of chrome. I reckon the edge of today uses less RAM than chrome and i dont have issues with any websites with edge.
Once it has displayed this for more than 30 seconds all the communicating nodes on the right appear to disappear into the heading QUIET IPS. Typically it drops down to just one device showing as communicating:
The IPs that I know are communicating with the elastic servers never reappear. It is only when you go to another tab and then return to the traffic tab that you get another 30s of useful information. As a result of this behaviour it is not particularly useful.
Thanks a lot for great feedbacks @geoffrey. Let me answer it one by one.
long running tasks - the tool show the long running tasks include internal default transform tasks. the explanation, "data_frame_...." is coming from the _tasks api call results. I'm planning to drop all internal tasks from long running tasks screen.
browser extension - Thanks a lot for your feedback about edge vs chrome. We will see the results Whenever I reach 1k users in chrome I'll plan to implement edge/firefox extension, app, web, docker image.
TRAFFIC tab - (only works with Elasticsearch because OS doesn't have that information). For the initial request, the API call collect all endpoints and draw the picture. 30 seconds later, the tool send another API call and compare the metrics espcially the `request_count`. If the request_count not changed the IP will be marked as passive that you can see at the bottom of the list. With the following message Quiet · 49 IPs No requests in the last 60s. Hidden from the map to reduce noise.
The IPs that I know are communicating with the elastic servers never reappear - I check like 100 times and I can see the correct index/search/update requests with correct IP addresses. Can you make a test for me? For example, run a script to send 10 search requests per second and check the screen again.
OK thanks for that. I guess in light of this I wonder if it perhaps would be worthwhile having a dropdown where you can specify how long a connection needs to be quiet before being dropped. As it currently stands, the 30 seconds you get, is sufficiently small that you are looking at what is happening and then it all disappears. The dropdown will allow some level of control around how long you get to observe things before they clear.
Also, with these discussions, if I send I think it is 3 replies and get nothing back it prevents me from doing any other replies until someone else says something. I was not aware of this limitation but I have to say its another "rule" that is annoying.
Anyway, thanks for the changes done so far. I using it daily more for my understanding of elasticsearch & kibana which is great.
The main idea for this extension is "real time monitoring and trouble shooting". But we can see the history from first click to extension to current view. I'll think about a dropdown for some control.
I was not aware of 3 replies rule sorry for that, I missed your message. I didn't receive any update.
Happy to hear you are using daily. Let me know if you have any more quesitons.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.