We were unable to load Disqus. If you are a moderator please see our troubleshooting guide.
Thanks for stopping by :)
First of all, thanks for the amazing article. Very high quality here!
I have seem recently, lots of activity around telemetry, I'm just wondering how it would fit in all this.
Thanks for the kind words Raphael! Writing an article/tutorial about telemetry has been on my todo list for some time now...so stay tuned for that!
In short, Telemetry is an Erlang library with the purpose of standardizing how applications emit events. These events can then be used to feed data into your monitoring solution. The contract is relatively straight forward in that libraries emit events via :telemetry.execute/3 and you can attach to those events via :telemetry.attach/4. You can see this in action in the article when we attach to Ecto's telemetry events to populate our Ecto Grafana dashboard.
Hope that helps!
Alex, dare I say that you are hands down, the most clear and thorough writer in the Elixir community. Thank you so much for this excellent series!
Thanks for your post. It's amazing and helpful to me. I gained some knowledge about it.
But I still concern about monitoring in multiple nodes (ex: deploy in Kubernetes). How to collect aggregate metrics from each node at the same time? I think about collect all metric through a centralized logging system (ex: in your post: https://akoutmos.com/post/e...
Hi Hieu and thanks for the question! If you need to scrape metrics from a dynamic environment (i.e pods/nodes coming up and down at all times and you can't statically specify which host to scrape), you'll need to use some sort of service discovery mechanism. Luckily Prometheus supports quite a few industry standard tools like Kubernetes, Consul, AWS EC2 API, etc. I would check out the Prometheus docs and see what works best for your setup https://prometheus.io/docs/....
Hope that helps :)
Very interesting! Thank you.