-
Notifications
You must be signed in to change notification settings - Fork 57
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
Add cmd-exec-id
to user agent
#1808
Conversation
With an alternative in the works, shall we skip this? |
@pietern I have not yet looked into Traceparent. I'll followup on this and close it once I verify it would work. |
For some social proof, the az CLI also does something similar, but to correlate the multiple telemetry logs recorded in a single CLI invocation: |
cmd-exec-id
to user agent to correlate API calls from the same command execution
Test Details: go/deco-tests/11613171225 |
cmd-exec-id
to user agent to correlate API calls from the same command executioncmd-exec-id
to user agent
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The change LGTM. Please update the PR summary. If you want to keep the discussion about traceparent around, it should move to its own section. Now it reads as if this PR has any bearing on traceparent, but it doesn't.
CLI: * Clean host URL in the `auth login` command ([#1879](#1879)). Bundles: * Fix bundle run when run interactively ([#1880](#1880)). * Fix relative path resolution for dashboards on Windows ([#1881](#1881)). Internal: * Address goreleaser deprecation warning ([#1872](#1872)). * Update actions/github-script to v7 ([#1873](#1873)). * Use Go 1.23 ([#1871](#1871)). * [Internal] Always write message for manual integration test trigger ([#1874](#1874)). * Add `cmd-exec-id` to user agent ([#1808](#1808)). * Added E2E test to run Python wheels on interactive cluster created in bundle ([#1864](#1864)). Dependency updates: * Bump github.com/hashicorp/terraform-json from 0.22.1 to 0.23.0 ([#1877](#1877)).
CLI: * Clean host URL in the `auth login` command ([#1879](#1879)). Bundles: * Fix bundle run when run interactively ([#1880](#1880)). * Fix relative path resolution for dashboards on Windows ([#1881](#1881)). Internal: * Address goreleaser deprecation warning ([#1872](#1872)). * Update actions/github-script to v7 ([#1873](#1873)). * Use Go 1.23 ([#1871](#1871)). * [Internal] Always write message for manual integration test trigger ([#1874](#1874)). * Add `cmd-exec-id` to user agent ([#1808](#1808)). * Added E2E test to run Python wheels on interactive cluster created in bundle ([#1864](#1864)). Dependency updates: * Bump github.com/hashicorp/terraform-json from 0.22.1 to 0.23.0 ([#1877](#1877)).
Changes
This PR adds the
cmd-exec-id
field to the user agent. This allows us to correlate multiple HTTP requests made from the CLI.Why Not Use HTTP traceparent?
We considered using the traceparent header in HTTP as an alternative, but it's not a good fit for our use case. Here's why:
For more details about how traceparent itself works and how it's used in the Go SDK, see databricks/databricks-sdk-go#914.
Tests
Unit test