diff --git a/instrumentation/opentelemetry_phoenix/lib/opentelemetry_phoenix.ex b/instrumentation/opentelemetry_phoenix/lib/opentelemetry_phoenix.ex index 40574ee6..9f9878a2 100644 --- a/instrumentation/opentelemetry_phoenix/lib/opentelemetry_phoenix.ex +++ b/instrumentation/opentelemetry_phoenix/lib/opentelemetry_phoenix.ex @@ -125,7 +125,10 @@ defmodule OpentelemetryPhoenix do [:phoenix, :live_view, :handle_event, :exception], [:phoenix, :live_component, :handle_event, :start], [:phoenix, :live_component, :handle_event, :stop], - [:phoenix, :live_component, :handle_event, :exception] + [:phoenix, :live_component, :handle_event, :exception], + [:phoenix, :live_component, :update, :start], + [:phoenix, :live_component, :update, :stop], + [:phoenix, :live_component, :update, :exception] ], &__MODULE__.handle_liveview_event/4, %{} @@ -202,6 +205,20 @@ defmodule OpentelemetryPhoenix do ) end + def handle_liveview_event( + [:phoenix, :live_component, :update, :start], + _measurements, + %{component: component} = meta, + _handler_configuration + ) do + OpentelemetryTelemetry.start_telemetry_span( + @tracer_id, + "#{inspect(component)}.update", + meta, + %{kind: :server} + ) + end + def handle_liveview_event( [:phoenix, _live, _event, :stop], _measurements,