What to collect from the IDO database for debugging

A customer asked in a support ticket for some SQL queries to collect valuable data from the IDO database especially the history of objects.

I took the suggestion and created an issue for Icinga Diagnostics:

Now, what I’m asking for: Do you have any ideas where we could collect valuable data from IDO for debugging that we can’t get from reading the logs? In my experience the logs where sufficient most of the time and if they were not enough the database didn’t have extra data to offer.

To make this clear, I can figure out how to collect the data I want per query, this is not what I’m asking for. Not the “how” but the “what” is what I need your output for. I think I could come up with something myself but that’s what communities are for, right? :wink:

One thing that might lead to something useful is if we find data that’s in the database and the debuglog but not in the mainlog. Many huge setups can’t have the debuglog running all the time.

I would use an abstracted (and limited!) version of what the Icinga Web event and history tabs use, e.g. for analysing missing notifications, or downtime events. Typically you always need to ask for a screenshot, and reading raw data is grep is more sufficient.

Queries which run more than a minute are not sufficient though, implement such with care. Also do note that the IDO uses a compat layer for notifications/contacts and is not 1:1 accurate to the notification debug log.

Cheers,
Michael

1 Like