tcoopman
Yesterday I watched OpenTelemetry: From Desire to Dashboard and it triggered me to take a new look at telemetry in Elixir.
But I don’t know where to start, so I wanted to ask you what your experiences are with telemetry and/or open telemetry. How you use it, how your setup looks like,…
I currently have some applications deployed on fly.io and I was wondering what a good way to start would be. A start could be something that adds some value but doesn’t involve too much work.
So I’d love to hear how you’re using it, what value does it bring for you,…
Trending in Discussions
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
New
The obligatory hello world thread!
Who are you and where are you from? :stuck_out_tongue:
New
@chrismccord : I just saw the Extract AGENTS.md from Phoenix.new into phx.new generator commit to the phoenix project.
My initial shotgu...
New
I was working on an Ecto migration and I needed a timestamp. So, for the nth time, I looked up the different data types for timestamps, a...
New
Fly’s CEO posted this recently - Turn And Face The Strange · The Fly Blog
It says that Fly is going all-in on sprites, which is a worry ...
New
We’re evaluating API mocking tools for OpenAPI-based projects and would love to hear what other teams are using.
We’re particularly inte...
New
Is there a word for the ~> symbol used in Version strings?
Do you also just call it a Squiggle Arrow™ ?!
New
Other Trending Topics
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve.
They are GUI (Emerge) and State management (S...
New
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
Chat & Discussions>Discussions
Latest on Elixir Forum
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #blog-post
- #phoenix_html
- #iex
- #graphql
- #ai
- #genstage
- #elixirconf-us
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #metaprogramming
- #security
- #hex











Showing Posts 1 to 10- Show Best Posts
- Show All Posts (oldest first)
- Show All Posts (newest first)
dimitarvp
Excellent question. I think that a proper knowledge base on OTel in Elixir is long overdue for whoever might have the time to author it.
tcoopman
I’m going to self bump in the hope that someone has any insights. Given all the talks and recommendations I see here about telemetry it can’t be that no one has some good resources/recommendations here ( I hope)
derek-zhou
First of all, Telemetry and OpenTelementry are 2 different things, 2 different packages that do not depends on each other.
Since you want to “adds some value but doesn’t involve too much work”, you can start with adding Telemetry to events of interest in your app, then you can observe time based chart that will be generated by Phoenix Dashboard and gain some insight of how your app is doing.It is very easy to setup.
Once you have done that, you may want to go further, to persist, export, and analysze the telemetry data that you are collecting. Then you might need OpenTelemetry.
tcoopman
Any recommendations here?
smaller_infinity
I just set up a telemetry stack for a Phoenix Application. Its on my homelab, so I’m not sure how it’ll work on fly.io, but hopefully it’ll give you a place to start. For traces you will need, at minimum, opentelemetry, opentelemetry_api, and opentelemetry_exporter. On top of that there are packages like opentelemetry_phoenix, which will trace important libraries for you out of the box. For metrics Elixir’s OTEL SDK isn’t ready yet, but you can use prom_ex, which is really good. And you can use an OTEL collector to handle both those metrics and those traces, and then forward them to whatever tool you are using. For logs you’ll just have to use whatever tool to collect them your stack offers (like promtail for grafana loki). Hopefully that’s enough to start, but if you have any questions just ask.
mudasobwa
Just to make it easier to get into using any telemetry backend, one might take a look at
telemetrialibrary which is backend-agnostic and allows telemetry adoption via@telemetriamodule attributes, liketcoopman
Thank you all for the replies.
So if I get this correctly. If I just use telemetry, the only thing I currently get is a view in the phoenix dashboard of the current situation.
If I want to get more insights, I need to use OpenTelemetry and deploy or use a hosted backend for OpenTelementry?
Any recommendations for that? Preferably something that’s easy to self host?
D4no0
Do you have anything specific in mind? Opentelemetry is just a backend for telemetry events. The amount of information will be determined by what metrics the libraries are sending by default and you from your application. Check the documentation for telemetry events that libraries are sending: Telemetry — Phoenix v1.8.8
Back in the day when telemetry was just released I used a self-hosted influxdb to store the events, nowadays there are a lot of options including opentelemetry which includes both a database for storage as well as a UI for building insights using those measurements.
dimitarvp
I have used the first successfully, at least locally. Should be fine for production usage but do your own extra research on that.
joelpaulkoch
Not open telemetry, but you could also have a look at this project: GitHub - lalabuy948/PhoenixAnalytics: 📊 Plug and play analytics for Phoenix applications. · GitHub