-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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(pubsub): add opentelemetry tracing for publish #8317
feat(pubsub): add opentelemetry tracing for publish #8317
Conversation
…sub-otel-trace-publish
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.
LGTM
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.
Overall this looks good to me :)
pubsub/trace.go
Outdated
publisherSpanName = "send" | ||
publishFlowControlSpanName = "publisher flow control" | ||
publishSchedulerSpanName = "publish scheduler" | ||
publishRPCSpanName = "send Publish" |
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 spec doc seems to imply that this should be just "publish"?
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.
Yeah this should just be Publish, I went back and forth on this for a bit.
…sub-otel-trace-publish
…#8439) * feat(datastore): Support aggregation query in transaction * feat(datastore): Refactoring integration test * feat(datastore): Integration tests for sum and average
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
…pis#8467) * fix: Transaction was started in a different session Retrying a "Session not found" error could cause a "Transaction was started in a different session" error. This happened because: 1. The detection of a "Session not found" error would remove the session from the pool, and also remove the session ID from the session handle 2. The retry mechanism would check out a new session from the pool, but not assign it to the transaction yet 3. The retry would then proceed to retry the transaction with an explicit BeginTransaction RPC. This function would however pick a new session from the pool, because step 2 had not yet assigned the transaction a new session. 4. The higher level retry loop would then after executing the BeginTransaction RPC assign the session that was picked in step 2 to the transaction. 5. The transaction would then proceed to use the session from step 2 with the transaction from step 3. * chore: remove unused code * chore: fix import order
Co-authored-by: rahul2393 <[email protected]>
…eapis#8473) * fix(datastore): Truncate transaction read time to millisecond * fix(datastore): Truncate transaction read time to microsecond
This package provides: - A TokenProvider interface - A Token type - A standard auth Error type - Configuration and TokenProvider for 2L0 oauth2 flows - Configuration and TokenProvider for 3L0 oauth2 flows - A means to cache tokens This code has been adapted from the golang oauth2 repo. In particular the types here are analogous to: oauth2, authhandler, and jwt packages. It should feel familiar for anyone who as worked with that library before, but it only provides a subset of the features that we require for our client libraries and auth stack as defined by our AIPs.
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
…ons and GENERATE_UUID (googleapis#8482) * feat(spanner/spansql): add support for bit functions and sequence functions * feat(spanner/spansql): add support for function GENERATE_UUID
…s#8481) * feat(spanner/spansql): add support for SEQUENCE statements * feat(spanner/spansql): remove using generics for CI env --------- Co-authored-by: Sri Harsha CH <[email protected]> Co-authored-by: rahul2393 <[email protected]>
feat: publicize tpu topology in v1 API PiperOrigin-RevId: 560116372 Source-Link: googleapis/googleapis@cf6f9ee Source-Link: googleapis/googleapis-gen@b618aaf Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYjYxOGFhZmE2NDE3NDFhNTYxNWMyMTZiODc4NjAwNjViZGMzMGY4ZCJ9 BEGIN_NESTED_COMMIT feat(bigquery/datapolicies): support using custom UDF in the data policy PiperOrigin-RevId: 559480224 Source-Link: googleapis/googleapis@4ffd6cd Source-Link: googleapis/googleapis-gen@2fa3b74 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMmZhM2I3NDk2ZjkyNzQ1YjE4N2QxYmI1ZjllNjVlNWQwMzZhNWQwNyJ9 END_NESTED_COMMIT BEGIN_NESTED_COMMIT docs(optimization): Minor formatting fix PiperOrigin-RevId: 559474510 Source-Link: googleapis/googleapis@5b3202b Source-Link: googleapis/googleapis-gen@7b6e921 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiN2I2ZTkyMTA4NTEzZDBmZjIxNjE0ZTBkYTZmYzgyNzkxNjFlNTVhMyJ9 END_NESTED_COMMIT BEGIN_NESTED_COMMIT docs(datacatalog): fix typo PiperOrigin-RevId: 559249168 Source-Link: googleapis/googleapis@f49882a Source-Link: googleapis/googleapis-gen@08d36c5 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMDhkMzZjNTkzYWI2MGYxODRhZmUxNDIzYTg0ZGY5NDJlMmFmMmRmMiJ9 END_NESTED_COMMIT BEGIN_NESTED_COMMIT docs(billing): update comments PiperOrigin-RevId: 559241398 Source-Link: googleapis/googleapis@6fe53ad Source-Link: googleapis/googleapis-gen@11b03ab Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMTFiMDNhYjZmOWNmMDBjYmNkMTY3MWFmN2Y1ZDcxMzQ4ZjI1NmE3NCJ9 END_NESTED_COMMIT BEGIN_NESTED_COMMIT feat(billing/budgets): Supported project-level-budgets in Public Budget API V1 Added scope for project scope filter in ListBudgetsRequest. When this field is set to a project's resource name, the budgets returned are tracking the costs for the given project. feat: Added enable_project_level_recipients for project owner budget emails Setting this field to true will enable email notification to project owners for project-level budgets. PiperOrigin-RevId: 559152052 Source-Link: googleapis/googleapis@113867b Source-Link: googleapis/googleapis-gen@017d177 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMDE3ZDE3N2Y1MTQ2OWQxNTA0MTdiN2I2YTQ1ZDk5ZDk5NjNmNzgxMyJ9 END_NESTED_COMMIT BEGIN_NESTED_COMMIT feat(billing/budgets): Supported project-level-budgets in Public Budget API V1Beta Added scope for project scope filter in ListBudgetsRequest. When this field is set to a project's resource name, the budgets returned are tracking the costs for the given project. feat: Added enable_project_level_recipients for project owner budget emails Setting this field to true will enable email notification to project owners for project-level budgets. PiperOrigin-RevId: 559151636 Source-Link: googleapis/googleapis@138b0f1 Source-Link: googleapis/googleapis-gen@41c0ba8 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNDFjMGJhODk5Zjc2Y2JiZmFjZGRlY2NmN2M3Njk3NDdhY2FmZTI2ZCJ9 END_NESTED_COMMIT BEGIN_NESTED_COMMIT feat(dataproc): support min_num_instances for primary worker and InstanceFlexibilityPolicy for secondary worker PiperOrigin-RevId: 559135594 Source-Link: googleapis/googleapis@4a5a6fd Source-Link: googleapis/googleapis-gen@5c91126 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNWM5MTEyNjFmMDAyNTdmNzY4YThhMzIzYWExYTNlNDgzNjQwYzFkMiJ9 END_NESTED_COMMIT BEGIN_NESTED_COMMIT docs(batch): Revert HTML formats in comments docs: Expand compute resource API docs to match with VM's machine type field docs: Clarify Batch API proto doc about pubsub notifications PiperOrigin-RevId: 558940776 Source-Link: googleapis/googleapis@a7ee700 Source-Link: googleapis/googleapis-gen@4f3a485 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNGYzYTQ4NWYzY2ViMTNiNjdlMDUyMmI3NGE3ZmQ5Y2NkZTJhYTZhMSJ9 END_NESTED_COMMIT
This will one of a few of PRs to implement OpenTelemetry Tracing into the Pub/Sub client library, starting with publish side spans.
Sample trace using Cloud Trace: