A very common problem for any vendor of significant size is how to monitor a large number of Iguana instances that are located behind firewalls at customer sites. For this reason we put together this example in the Iguana App repository of how to do it. How it works is really simple:
- On each monitored instance of Iguana you install a Agent Monitor channel as a From Translator channel.
- Every few minutes this wakes up, queries the status of the local instance of Iguana using the monitor API (see the code).
- It then uses HTTP to post that data back to a central instance of Iguana.
- The central instance of Iguana listens for incoming HTTP requests from the agents and logs that data into a simple SQLite database.
- The same central instance also is used to serve up an HTML dashboard which shows the status of the Iguana instances.
Here’s a screenshot of what the dashboard looks like:
Only one row is showing in this case. If you click on that row you’ll see this type of information:
This view shows all the low level health statistics of the particular Iguana instance. Now the really exciting thing is not the pretty dashboard of course but what you can do with it. Think about the possibilities:
- The agents are all simple and dumb.
- All the data is easy to get to in a central location, and thanks to Iguana translator – dead easy to manipulate.
- So that makes it simple to run automated checks on the data so that you can power automated alerts which instead of bombarding you with incomprehensible email notification spam can instead point to this dashboard.
- You can customize what is displayed in the dashboard to your heart’s delight.
So want to play with it? It’s easy. If you are using Iguana 5.6.20 then go get the Channel Manager as described in getting started. Iguana 6 makes this an easier process since you can go just import the channels from this Github repo.
Once you have that installed the two channels to get are:
- Monitor – 1. Agent – this is an example channel that posts status home.
- Monitor – 2. Dashboard – which shows the dashboard that you see here.