Hello (again), Hindsight is using a push-model (i.e Nagios passive checks). This is great, but I want to plug it with Prometheus which uses pull-model [1].
I see several ways to handle this: - use the prometheus push-gateway [2]. This has several drawbacks listed below - introduce pull model in hindsight - add a new daemon, based on lua_sandbox too, but using pull model The drawbacks of prometheus push-gateway are: - Unnecessary polling of data (data is grabbed even if not pulled by prometheus - time lag, between data grabbing and data pulling - To sum up : to reduce time lag, you increase polling rate, when us decrease polling, you increase time lag. The push model may work like this: - Adding pull_message_matcher config to inputs (defaults to FALSE) - Adding process_pull_message() function to inputs, returning a table of messages (or should it be inject_pull_message() + return 0?) - Adding request_pull_message() function to outputs, which maps to matching process_pull_message() and concatenates the results in a table. This function is blocking. Opinions? NB: I won't work on this before 2017 or 2018, but I need to discuss this early to. NB2: My current TODO list is at: https://gist.github.com/sathieu/5a7e83d514638f396e17d462f13adee0 [1]: https://prometheus.io/docs/introduction/faq/#why-do-you-pull-rather-than-push? [2]: https://prometheus.io/docs/instrumenting/pushing/ -- Mathieu Parent _______________________________________________ Heka mailing list [email protected] https://mail.mozilla.org/listinfo/heka

