-
Notifications
You must be signed in to change notification settings - Fork 21
Description
Currently we have a single function for getting all stats
Line 107 in 6a793b6
| func (m *Manager) GetStats() (*cgroups.Stats, error) { |
This internally calls individual controllers stats function, for example statCPU
Line 79 in 6a793b6
| func statCpu(dirPath string, stats *cgroups.Stats) error { |
We use cadvisor for our container resource observability and it currently has a single housekeeping interval for all metrics per container. It uses this library to get the stats. However there can be cases where some metrics need to be emitted more frequently than others and getting stats from all the files and just processing some of them is just unnecessary work we can avoid.
I'm planning to add per metric housekeeping interval to cadvisor and it will be better if we can make the individual stat functions public or add methods inManager to get individual controller' stats.