Extracting and integrating knowledge into your individual dashboard
In Half 1, my colleague Mel Delgado gave an introduction to ThousandEyes, and how one can deploy your individual ThousandEyes agent at residence by way of a raspberry pi. This SaaS platform is all about offering observability within the WAN with brokers working within the cloud, on prem, or in your finish host. Customers will get insights into latency, packet loss, community hops, BGP routing, but in addition HTTP web page load time, DNS server response time, DOM load time and so many extra stats! I believe it’s protected to say that ThousandEyes is gathering tons of meta-data concerning the well being of the entire Web and particularly to your working providers.
ThousandEyes already gives a classy and customizable web-dashboard and this is likely to be enough for many customers. Nevertheless, what if you need to combine knowledge from ThousandEyes into your individual software or dashboard? Or, you wish to use totally different visualization kinds, and even show aggregated datasets? If that’s the case, learn on!
Extract and Combine ThousandEyes Knowledge
Extracting knowledge from ThousandEyes is straightforward with the in depth REST API. You’ll be able to get extra data on the developer reference web page. With the API you may merely pull the historic or newest knowledge out of your ThousandEyes account to any database and visualize it in your dashboard software of selection. For example, I used a Python script to fetch and insert the info into the time-series database InfluxDB and visualized the info by way of the analytics & monitoring resolution Grafana. To cut back the implementation time for brand spanking new customers, I packaged every thing in a multi-container Docker software by way of Docker-Compose.
The perfect half is, you may strive it out inside minutes! Get the code and clone the repository from the DevNet Code Change.
Getting historic knowledge and leveraging the Grafana dashboard
The python connector script permits to fetch even historic knowledge (the consumer can outline the time vary) from ThousandEyes which will probably be then inserted within the database. You’ll be able to then already see some knowledge within the pre-created Grafana dashboard template which you’ll be able to edit to your wants. You’ll be able to see some screenshots beneath. Moreover, you too can mix varied knowledge sources into the identical dashboard (e.g. from WAN routers or firewalls) which might provide the final single view on the well being of your property.
Grafana Dashboard Template Web page 1
Grafana Dashboard Template Web page 2
Behind the Scenes
I selected to create a Python connector script to have full management of what knowledge needs to be inserted into influxDB and to have the power to fetch historic knowledge from ThousandEyes. Another can be to create a Telegraf plugin in Go to get the most recent knowledge.
The info is coming from checks that are configured within the ThousandEyes dashboard. Since each check is gathering totally different knowledge, and there are numerous checks, the Python connector scripts solely help the preferred check varieties as of now – (Internet) web page load, (Internet) HTTP server, (Community) end-to-end metrics, (Community) path visualization. Crucial data to get the right knowledge from these checks is the testId which might be queried by way of the REST API as documented right here. After getting the ID, you may question the info from every of those check varieties.
I hope you should utilize this small software to extract knowledge out of ThousandEyes! In fact, be at liberty to go to DevNet Code Change to increase it!
Find out how Cisco’s ThousandEyes gives visibility and helps remedy networking issues throughout the web. DevNet Snack Minute Episode 35
We’d love to listen to what you suppose. Ask a query or go away a remark beneath.
And keep related with Cisco DevNet on social!
LinkedIn | Twitter @CiscoDevNet | Fb | Developer Video Channel