That's the reason I haven't bothered with Prometheus - pull systems make no sense to me since you have to configure a single place with perfect* knowledge of your system rather than just pushing local knowledge to a collector.
(Ok, you do need some knowledge at the parent if you want to raise alerts but you'd need that anyway.)
If a stream of data stops appearing, then you can alert. You don't need to pre-configure the existence of that stream (although if you might never get data from an object, this obviously is a failure you won't catch.)
Your article is a good one but in my experience, many companies are still many years from being able to implement that kind of database:machine knowledge consistency.
That's what the Prometheus push gateway is for. While prom itself is poll-based, you can extract data from servers behind a firewall by pushing metrics from an agent into the gateway. No crazy issues.
The general advice is to run Prometheus behind the firewall, you want as few things between your monitoring and what you're monitoring as possible. This makes it more resilient.
Ive been using Riemann at work for the past 6 months or so. There is a learning curve if you don't know clojure, that has been the biggest hurdle for me. But I love what it does and its fantastic along with the dashboard it comes with
negative filters might be useful too. i.e. non-jQuery non-d3, or at least make selecting multiple dependencies show the union of both sets, rather than the empty intersection.