Skip to content

Move active_job out of messaging domain #2368

@thompson-tomo

Description

@thompson-tomo

Currently the active_job instrumentation is using the messaging domain however the functionality of active_job doesn't fit that of a messaging system. For instance I in the past attempted to have signalr, mqtt Brooker & nats defined but was told they are not messaging systems.

As such on further looking at it, the purpose of active job is a task/Workflow framework for which we have no conventions. I attempted to define on but did not progress due to lacking of a sig.

As such I would propose the following changes to this instrumentation which is in alignment with #2361

old attribute new attribute comments
code.namespace rails.active_job.task.name sourced from job.class.name
messaging.system rails.component.name 'active_job'
messaging.destination rails.active_job.queue.name sourced from job.queue_name
messaging.message.id rails.active_job.job.id sourced from job.job_id
messaging.active_job.adapter.name rails.active_job.adapter.name sourced from job.class.queue_adapter_name
messaging.active_job.message.provider_job_id rails.active_job.job.external_id sourced from job.provider_job_id
messaging.active_job.message.priority rails.active_job.job.priority sourced from job.priority

The span kinds should be also switched to internal or maybe client?

Metadata

Metadata

Assignees

No one assigned
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions