Skip to content

Unable to generate deterministic IDs for use during a workflow run #38578

Open
@dustyhorizon

Description

@dustyhorizon

Component(s)

receiver/github

What happened?

Description

Per the new*ID functions, I am trying to replicate the creation of deterministic Span IDs to be used within the workflows itself i.e. creating spans of command executions via otel-cli

However, I am having issues trying to derive the various parameters used by the GitHub receiver i.e. newJobSpanID uses event.GetWorkflowJob().GetName() which is not readily available within an GitHub actions environment, similar issue with newStepSpanID where there is something about step names and step numbers.

Would it be possible to change the parameters used by these new*ID functions to use variables that are available within a GitHub actions environment during a workflow run? Maybe we could use a combination of JobID/StepID given that every job/step has to have an ID in the workflow, and that can be easily derived since we have to specify the ID in the file anyway.

This will make collected traces cleaner and sensible such as having otel-cli spans having the correct ancestry i.e. such command runs should be a span under a workflow step.

Steps to Reproduce

N/A

Expected Result

Being able to generate deterministic IDs during a workflow run in GitHub actions, with existing variables/contexts

Actual Result

Unable to generate deterministic IDs during a workflow run in GitHub actions due to variables used by the GitHub receiver being unavailable within the running environment.

Collector version

1a91389

Environment information

Environment

CI: GitHub Actions

OpenTelemetry Collector configuration

Log output

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions