Hi, we are an ISP and we have been using Zabbix for monitoring of our system and it actually works great. However, we want to try something different that has more features, flexible and advance reporting capabilities. We have been testing checkmk for couple of days now and it looks good so far.
But it seems like checkmk cannot query an API endpoint that return a json data and be able to create service from that json and monitor them? The equivalence of this in Zabbix is to:
create a host and use the endpoint as the ip address
create a discovery rule on the host to discover all services on the endpoint which is returned as json
create an item for each of the services from the discovered rule
And finally create your trigger.
Is there a way to achieve this in checkmk? This is of importance as we use nomad and consul service discovery which mostly return json data
Unfortunately not out of the box. There is no generic JSON parser that can transform the answer to some services.
Only option at the moment are a special agent like the integrations some storage systems or the Redfish management. All these special agents retrieve JSON data from REST APIs and transform this data to something that than inside CheckMK is processed to checks.
Another use case are trying to do is for papercut. They have a health monitoring api that returns the data in a json format. The ability to have an simplified extension that could add a host and configure all the data as services to display would be great.
I think thats what the posters want. An extension, https url, data that is returned as json but assign as services to monitor.