Skip to content

Commit fa4d0f5

Browse files
committed
More OTel decorators for Device related tracing
1 parent e05943a commit fa4d0f5

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

lib/nerves_hub/deployments/orchestrator.ex

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ defmodule NervesHub.Deployments.Orchestrator do
108108
{:ok, deployment, {:continue, :boot}}
109109
end
110110

111+
@decorate with_span("Deployments.Orchestrator.boot")
111112
def handle_continue(:boot, deployment) do
112113
_ = PubSub.subscribe(NervesHub.PubSub, "deployment:#{deployment.id}")
113114

@@ -128,6 +129,7 @@ defmodule NervesHub.Deployments.Orchestrator do
128129
{:noreply, deployment}
129130
end
130131

132+
@decorate with_span("Deployments.Orchestrator.handle_info:deployments/update")
131133
def handle_info(%Broadcast{event: "deployments/update"}, deployment) do
132134
deployment =
133135
deployment

lib/nerves_hub_web/channels/device_channel.ex

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ defmodule NervesHubWeb.DeviceChannel do
102102

103103
# We can save a fairly expensive query by checking the incoming deployment's payload
104104
# If it matches, we can set the deployment directly and only do 3 queries (update, two preloads)
105+
@decorate with_span("Channels.DeviceChannel.handle_info:deployments/changed,deployment:none")
105106
def handle_info(
106107
%Broadcast{event: "deployments/changed", topic: "deployment:none", payload: payload},
107108
%{assigns: %{device: device}} = socket
@@ -125,6 +126,7 @@ defmodule NervesHubWeb.DeviceChannel do
125126
{:noreply, assign_deployment(socket, payload)}
126127
end
127128

129+
@decorate with_span("Channels.DeviceChannel.handle_info:deployments/changed")
128130
def handle_info(
129131
%Broadcast{event: "deployments/changed", payload: payload},
130132
%{assigns: %{device: device}} = socket
@@ -142,6 +144,7 @@ defmodule NervesHubWeb.DeviceChannel do
142144
end
143145
end
144146

147+
@decorate with_span("Channels.DeviceChannel.handle_info:resolve_changed_deployment")
145148
def handle_info(:resolve_changed_deployment, %{assigns: %{device: device}} = socket) do
146149
:telemetry.execute([:nerves_hub, :devices, :deployment, :changed], %{count: 1})
147150

@@ -175,6 +178,7 @@ defmodule NervesHubWeb.DeviceChannel do
175178
{:noreply, socket}
176179
end
177180

181+
@decorate with_span("Channels.DeviceChannel.handle_info:deployments/update")
178182
def handle_info({"deployments/update", inflight_update}, %{assigns: %{device: device}} = socket) do
179183
device = deployment_preload(device)
180184

@@ -360,6 +364,7 @@ defmodule NervesHubWeb.DeviceChannel do
360364
end
361365
end
362366

367+
@decorate with_span("Channels.DeviceChannel.handle_in:location:update")
363368
def handle_in("location:update", location, %{assigns: %{device: device}} = socket) do
364369
metadata = Map.put(device.connection_metadata, "location", location)
365370

@@ -410,6 +415,7 @@ defmodule NervesHubWeb.DeviceChannel do
410415
{:noreply, socket}
411416
end
412417

418+
@decorate with_span("Channels.DeviceChannel.handle_in:health_check_report")
413419
def handle_in("health_check_report", %{"value" => device_status}, socket) do
414420
device_meta =
415421
for {key, val} <- Map.from_struct(socket.assigns.device.firmware_metadata),

0 commit comments

Comments
 (0)