I had the following question that came to my mind after some years of doing monitoring :
What component should managed cached data ?
Let me detail why, sometime, some metrics cannot be requested in a one shot request, but needs to use intermediates oid or sometime even external data to get whole data and decide of the check result, and alot of time, thoses are data not moving much (ex: mac addresses, interfaces name, etc).
The main idea here is to preserve monitoring server ressources, network ressources, and requested device resources, and tall of his usually gets critically important in big monitored infrastructures.
To implement this i used to directly implement a cache file system in /tmp for the scripts, and dealing with concurrent access within script. Also some scripts collect different data in the same set of data, which mean thoses cache files can be used and updated by multiple scripts.
So, i was wondering if there were other ways to deal with this kind of need. maybe it could be externalized to the collect engine (non support it at my knowledge) or any other part of a monitoring architecture in some way, i was thinking for example of a transparent proxy cache for example.
(no sure if it belongs to this category, move topic if needed)