diff --git a/content/en/docs/languages/erlang/getting-started.md b/content/en/docs/languages/erlang/getting-started.md index 85b40f720b6a..9569f721d30b 100644 --- a/content/en/docs/languages/erlang/getting-started.md +++ b/content/en/docs/languages/erlang/getting-started.md @@ -47,9 +47,14 @@ We'll need a few other dependencies that Phoenix doesn't come with. OpenTelemetry Collector and/or to self-hosted or commercial services. - `opentelemetry_phoenix`: creates OpenTelemetry spans from the Elixir `:telemetry` events created by Phoenix. -- `opentelemetry_cowboy`: creates OpenTelemetry spans from the Elixir - `:telemetry` events created by the Cowboy web server (which is used by - Phoenix). +- web server dependencies: There are currently two options for web servers and + each has their telemetry counterpart. Phoenix applications post 1.7.11 default + to Bandit while pre 1.7.11 default to Cowboy. Both choices are valid. Use one + of the below options based on the web server your Phoenix application uses: + - `opentelemetry_cowboy`: creates OpenTelemetry spans from the Elixir + `:telemetry` events created by the Cowboy web server + - `opentelemetry_bandit`: creates OpenTelemetry spans from the Elixir + `:telemetry` events created by the Bandit web server ```elixir # mix.exs @@ -59,7 +64,10 @@ def deps do {:opentelemetry_api, "~> {{% param versions.otelApi %}}"}, {:opentelemetry_exporter, "~> {{% param versions.otelExporter %}}"}, {:opentelemetry_phoenix, "~> {{% param versions.otelPhoenix %}}"}, - {:opentelemetry_cowboy, "~> {{% param versions.otelCowboy %}}"}, + # for Cowboy + {:opentelemetry_cowboy, "~> {{% param versions.otelCowboy %}}"} + # for Bandit + {:opentelemetry_bandit, "~> {{% version-from-registry instrumentation-erlang-bandit %}}"}, ] end ``` @@ -70,8 +78,12 @@ The last two also need to be setup when your application starts: # application.ex @impl true def start(_type, _args) do + # Depending on what webserver you are using, you will either use: :opentelemetry_cowboy.setup() OpentelemetryPhoenix.setup(adapter: :cowboy2) + # or + OpentelemetryBandit.setup() + OpentelemetryPhoenix.setup(adapter: :bandit) end ```