You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
GitHub Action
OpenTelemetry Export Trace
latest
This action will export GitHub Workflow telemetry data using OTLP to a configurable endpoint.
name: OpenTelemetry Export Trace
on:
workflow_run:
workflows: [my-workflow]
types: [completed]
jobs:
otel-export-trace:
name: OpenTelemetry Export Trace
runs-on: ubuntu-latest
steps:
- name: Export Workflow Trace
uses: inception-health/otel-export-trace-action@latest
with:
otlpEndpoint: grpc://api.honeycomb.io:443/
otlpHeaders: ${{ secrets.OTLP_HEADERS }}
githubToken: ${{ secrets.GITHUB_TOKEN }}
runId: ${{ github.event.workflow_run.id }}
name: OpenTelemetry Export Trace
on:
push:
branch: [main]
jobs:
build:
# Run build steps
otel-export-trace:
if: always()
name: OpenTelemetry Export Trace
runs-on: ubuntu-latest
needs: [build] # must run when all jobs are complete
steps:
- name: Export Workflow Trace
uses: inception-health/otel-export-trace-action@latest
with:
otlpEndpoint: grpc://api.honeycomb.io:443/
otlpHeaders: ${{ secrets.OTLP_HEADERS }}
githubToken: ${{ secrets.GITHUB_TOKEN }}
Combined with OpenTelemetry Upload Trace Artifact this action will Download the OTLP Trace Log Artifact uploaded from the Workflow Run and export it.
pr-workflow.yml
name: "PR check"
on:
pull_request:
branches: [main]
jobs:
build-and-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
- name: Install Dependencies
run: npm ci --ignore-scripts
- name: run tests
run: npm run test:ci
- uses: inception-health/otel-upload-test-artifact-action@v1
if: always()
with:
jobName: "build-and-test"
stepName: "run tests"
path: "junit.xml"
type: "junit"
githubToken: ${{ secrets.GITHUB_TOKEN }}
otel-export-trace.yml
name: OpenTelemetry Export Trace
on:
workflow_run:
workflows: ["PR check"]
types: [completed]
jobs:
otel-export-trace:
name: OpenTelemetry Export Trace
runs-on: ubuntu-latest
steps:
- name: Export Workflow Trace
uses: inception-health/otel-export-trace-action@latest
with:
otlpEndpoint: grpc://api.honeycomb.io:443/
otlpHeaders: ${{ secrets.OTLP_HEADERS }}
githubToken: ${{ secrets.GITHUB_TOKEN }}
runId: ${{ github.event.workflow_run.id }}
name | description | required | default |
---|---|---|---|
otlpEndpoint | The destination endpoint to export OpenTelemetry traces to | true | |
otlpHeaders | Network Headers for the destination endpoint to export OpenTelemetry traces to. Ex. x-honeycomb-team=YOUR_API_KEY,x-honeycomb-dataset=YOUR_DATASET |
true | |
otelServiceName | OpenTelemetry service name | false | |
githubToken | The repository token with Workflow permissions. Not required for public repos | false | |
runId | Workflow Run ID to Export | false | env.GITHUB_RUN_ID |
name | description |
---|---|
traceId | The OpenTelemetry Trace ID for this Trace |
name | type | description |
---|---|---|
name | string | Workflow/Job/Step name |
service.instance.id | string | {repo_full_name}/{workflow_id}/{run_id}/{run_num} |
service.name | string | Github Workflow Name |
service.namespace | string | Github Repo Full Name |
service.version | string | Github Workflow Run HEAD SHA |
github.workflow_id | integer | Github Workflow ID |
github.workflow | string | Github Workflow Name |
github.workflow_url | string | Github Workflow URL |
github.run_attempt | integer | Github Workflow Run Attempt |
github.run_id | integer | Github Workflow Run ID |
github.run_number | integer | Github Workflow Run Number |
github.created_at | integer | Github Workflow Run Created Timestamp |
github.updated_at | integer | Github Workflow Run Updated Timestamp |
github.run_started_at | integer | Github Workflow Run Started Timestamp |
github.html_url | string | Github Workflow Run HTML URL |
github.author_email | string | DEPRECATED: use github.head_commit.author.email |
github.author_name | string | DEPRECATED: use github.head_commit.author.name |
github.conclusion | string | Github Workflow Run Conclusion |
github.event | string | Github Workflow Run Event Name |
github.git_refs_url | string | Github Workflow Run refs url |
github.head_commit.id | string | Github Workflow Run HEAD commit id |
github.head_commit.tree_id | string | Github Workflow Run HEAD commit tree id |
github.head_commit.author.name | string | Github Workflow Run HEAD author name |
github.head_commit.author.email | string | Github Workflow Run HEAD author name |
github.head_commit.committer.name | string | Github Workflow Run HEAD committer name |
github.head_commit.committer.email | string | Github Workflow Run HEAD committer name |
github.head_commit.message | string | Github Workflow Run HEAD commit message |
github.head_commit.timestamp | string | Github Workflow Run HEAD commit timestamp |
github.head_sha | string | Github Workflow Run HEAD SHA |
github.head_ref | string | Github Workflow Run HEAD REF |
github.base_sha | string | Github Workflow Run Base SHA |
github.base_ref | string | Github Workflow Run Base REF |
github.pull_requests.{X}.id | string | Github Pull Request ID |
github.pull_requests.{X}.number | integer | Github Pull Request number |
github.pull_requests.{X}.url | string | Github Pull Request url |
github.pull_requests.{X}.head.sha | string | Github Pull Request HEAD sha |
github.pull_requests.{X}.head.ref | string | Github Pull Request HEAD ref |
github.pull_requests.{X}.head.repo.id | string | Github Pull Request HEAD Repository id |
github.pull_requests.{X}.head.repo.url | string | Github Pull Request HEAD Repository url |
github.pull_requests.{X}.head.repo.name | string | Github Pull Request HEAD Repository name |
github.pull_requests.{X}.base.sha | string | Github Pull Request base sha |
github.pull_requests.{X}.base.ref | string | Github Pull Request base ref |
github.pull_requests.{X}.base.repo.id | string | Github Pull Request base Repository id |
github.pull_requests.{X}.base.repo.url | string | Github Pull Request base Repository url |
github.pull_requests.{X}.base.repo.name | string | Github Pull Request base Repository name |
github.job.id | float | Github Job Run ID |
github.job.name | string | Github Job Run Name |
github.job.started_at | string | Github Job Run started_at |
github.job.completed_at | string | Github Job Run completed_at |
github.job.conclusion | string | Github Job Run Conclusion |
github.job.labels | string | Github Job Run Labels. Comma separated values |
github.job.run_attempt | integer | Github Job Run Run Attempt |
github.job.run_id | integer | Github Job Run Run ID |
github.job.runner_group_id | integer | Github Job Runner Group ID |
github.job.runner_group_name | string | Github Job Runner Group Name |
github.job.runner_name | string | Github Job Runner Name |
github.job.step.id | string | GitHub Step ID |
github.job.step.conclusion | string | Github Step Run Conclusion |
github.job.step.name | string | Github Step Run Name |
github.job.step.number | integer | Github Step Run Number |
github.job.step.started_at | string | Github Step Run started_at |
github.job.step.completed_at | string | Github Step Run completed_at |