diff --git a/lib/oban/telemetry.ex b/lib/oban/telemetry.ex index 360b40d4..043f3acf 100644 --- a/lib/oban/telemetry.ex +++ b/lib/oban/telemetry.ex @@ -358,6 +358,7 @@ defmodule Oban.Telemetry do * `event` — always `peer:election` * `leader` — boolean indicating whether the peer is the leader * `message` — information about the peers role in an election + * `node` — the name of the node that changed leadership * `was_leader` — boolean indicating whether the peer was leader before the election #### Plugin Events @@ -537,8 +538,9 @@ defmodule Oban.Telemetry do %{ event: "peer:election", leader: leader, - was_leader: was_leader, - message: message + message: message, + node: meta.conf.node, + was_leader: was_leader } end) end diff --git a/test/oban/telemetry_test.exs b/test/oban/telemetry_test.exs index 6f620645..6bea3a31 100644 --- a/test/oban/telemetry_test.exs +++ b/test/oban/telemetry_test.exs @@ -181,7 +181,7 @@ defmodule Oban.TelemetryTest do logged = capture_log(fn -> :telemetry.execute([:oban, :peer, :election, :stop], %{}, %{ - conf: %{}, + conf: %{node: "worker.1"}, leader: true, was_leader: false }) @@ -189,6 +189,7 @@ defmodule Oban.TelemetryTest do assert logged =~ ~s("event":"peer:election") assert logged =~ ~s("leader":true) + assert logged =~ ~s("node":"worker.1") assert logged =~ ~s("was_leader":false) assert logged =~ ~s("message":"peer became leader") end