Hacker News new | ask | show | jobs
by dozzie 3481 days ago
Discovery mechanism like this may be nice in some situations, but it doesn't change the underlying architectural problem: you still need to go through central configuration of monitoring system to get something watched.

This architecture results in much longer feedback loop, [object to be monitored -> discovery -> config -> collection engine -> probe -> object's state -> storage] vs. [object to be monitored -> probe -> object's state -> storage]. And you have to move requests/network packets back and forth just to collect the usage for each CPU on a machine separately (or NICs usage, or filesystem usage, or VM/LXC guests, or Apache/nginx vhosts, or...), because the knowledge what objects are there to monitor is on the monitored host's side, not on the monitoring system's side.

And you're limited to whatever resources this predefined discovery mechanism supports. You can't easily write your own probe that discovers things on its own.

And on top of that, discovery mechanism doesn't allow temporary, ad-hoc defined things to be monitored. You can't imagine how often I set a screen with a shell loop to collect a metric or watch state for this one particular process I was debugging:

  while sleep 1; do foo; done | tee /tmp/foo.log
Why not chart that from a monitoring system? Why not display its state on a dashboard? Why not alert in regular way?