Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add TraceInfo to HTTPStartStop envelopes #407

Merged
merged 1 commit into from
Apr 5, 2024

Conversation

ctlong
Copy link
Member

@ctlong ctlong commented Apr 4, 2024

A short explanation of the proposed change:

Adds the span ID and trace ID for each request to the corresponding HTTPStartStop envelopes as tags, if they're present.

An explanation of the use cases your change solves

Should help operators and developers to track their traces through gorouter (see
cloudfoundry/routing-release#308).

Also aids corresponding work within the OTel Collector to export HTTPStartStop envelopes as traces.

Instructions to functionally test the behavior change using operator interfaces (BOSH manifest, logs, curl, and metrics)

  • deploy updated release
  • install log-cache cli plugin: cf install-plugin log-cache
  • push app: cf push dora -b ruby_buildpack
  • curl app: curl dora.cfapps.com
  • get recent http timers from log-cache: cf tail dora --json -t timer | jq '.batch[] | select(.timer.name=="http")'
  • See that timers have span_id and trace_id tags

Expected result after the change

HTTPStartStop envelopes emitted by Gorouter (converted to loggregator v2 timers in the UDP Forwarder Agent) are tagged with the corresponding HTTP request's trace ID and span ID.

Current result before the change

HTTPStartStop envelopes emitted by Gorouter (converted to loggregator v2 timers in the UDP Forwarder Agent) are not tagged with the corresponding HTTP request's trace ID and span ID.

Links to any other associated PRs

None

  • I have viewed signed and have submitted the Contributor License Agreement

  • I have made this pull request to the main branch

  • I have run all the unit tests.

  • (Optional) I have run Routing Acceptance Tests and Routing Smoke Tests

  • (Optional) I have run CF Acceptance Tests

Adds the span ID and trace ID for each request to the corresponding
HTTPStartStop envelopes as tags, if they're present.

Should help operators and developers to track their traces through
gorouter (see
cloudfoundry/routing-release#308).

Also aids corresponding work within the OTel Collector to export
HTTPStartStop envelopes as traces.

Signed-off-by: Carson Long <[email protected]>
@geofffranks geofffranks merged commit e7dfb8a into main Apr 5, 2024
1 check passed
@geofffranks geofffranks deleted the feat/add-traceinfo-to-httpstartstops branch April 5, 2024 12:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants