Skip to content

Conversation

@mhanberg
Copy link

@mhanberg mhanberg commented Jul 11, 2025

What does this PR do?

Updates the opentelemetry_semantic_conventions dependency of opentelemetry_oban to 1.27.

I wasn't sure exactly what the replacement is for the "messaging_destination_kind" key, so I deleted it. Please correct me if this was the wrong decision. messaging destination kind was indeed deleted, as they didn't find a use case for it.

  • Adds the operation type to job insertion as well as job handling
  • includes message id, which is the job id
  • Migrates some fields that were renamed.

@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented Jul 11, 2025

CLA Signed

The committers listed above are authorized under a signed CLA.

@brendon9x
Copy link

I'd love to see this PR approved. 🙏

@grzuy
Copy link
Contributor

grzuy commented Oct 31, 2025

For the record, this seems to be similar to #435.

Also would resolve issue #428.

Copy link
Contributor

@grzuy grzuy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @mhanberg,

I'm not a maintainer nor approver, but sharing my feedback in case it helps in any way move this forward.

Thank you 🙏

[
event(
name: "exception",
name: :exception,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was already fixed separately in #558

[
event(
name: "exception",
name: :exception,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was already fixed separately in #558

[
event(
name: "exception",
name: :exception,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was already fixed separately in #558

:"oban.job.scheduled_at" => DateTime.to_iso8601(scheduled_at)
}

span_name = "#{worker} process"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems like we also need to update the span name per https://opentelemetry.io/docs/specs/semconv/messaging/messaging-spans/#span-name?

MessagingAttributes.messaging_client_id() => worker,
MessagingAttributes.messaging_destination_name() => queue,
MessagingAttributes.messaging_operation_type() =>
MessagingAttributes.messaging_operation_type_values().process,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does the warning message displayed in the top of https://opentelemetry.io/docs/specs/semconv/messaging/ means that the migration needs to provide a OTEL_SEMCONV_STABILITY_OPT_IN env var that allows for previous or newer "messaging" conventions?

Image

Trace.messaging_destination_kind() => :queue,
MessagingAttributes.messaging_system() => :oban,
MessagingAttributes.messaging_client_id() => worker,
MessagingAttributes.messaging_destination_name() => queue,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see here that you're keeping the existing interpretation that a "Destination" is an Oban queue.

For what is worth and for the record, noting that this other pull request (#436 (comment)) is making a different interpretation in that a "Destination" is the Oban Worker and the "Consumer group" is the Oban queue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants