[
https://issues.apache.org/jira/browse/CAMEL-23460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18097872#comment-18097872
]
Andrea Cosentino commented on CAMEL-23460:
------------------------------------------
Batch 1 (messaging & storage: PubSub, Storage, BigQuery, Firestore) merged via
https://github.com/apache/camel/pull/24974 for 4.22.0. Remaining batches to
follow: workspace/productivity (Calendar, Drive, Mail, Sheets) and AI/ML & misc
(Speech-to-Text, Text-to-Speech, Vision, VertexAI, Functions, Secret Manager).
Note: camel-google-pubsub-lite from the original list is not a component module
in the tree and was omitted.
_Claude Code on behalf of Andrea Cosentino (@oscerd)._
> camel-telemetry - Add span decorators for Google Cloud
> ------------------------------------------------------
>
> Key: CAMEL-23460
> URL: https://issues.apache.org/jira/browse/CAMEL-23460
> Project: Camel
> Issue Type: Improvement
> Components: camel-telemetry
> Reporter: Andrea Cosentino
> Assignee: Andrea Cosentino
> Priority: Major
>
> We have span decorators for AWS components in camel-telemetry (CAMEL-23387
> covered all 36 AWS components across 6 PRs: #23038, #23040, #23045, #23077,
> #23081 and #23083). The follow-up mentioned in CAMEL-23387's description was
> to add equivalent span decorators for Google Cloud components.
> Google Cloud components in components/camel-google/ (15 schemes;
> camel-google-common is a shared utility module):
> * camel-google-bigquery
> * camel-google-calendar
> * camel-google-drive
> * camel-google-firestore
> * camel-google-functions
> * camel-google-mail
> * camel-google-pubsub
> * camel-google-pubsub-lite
> * camel-google-secret-manager
> * camel-google-sheets
> * camel-google-speech-to-text
> * camel-google-storage
> * camel-google-text-to-speech
> * camel-google-vertexai
> * camel-google-vision
> Each decorator should follow the patterns established by the AWS work in
> CAMEL-23387:
> * Extend AbstractSpanDecorator (or AbstractMessagingSpanDecorator for
> messaging-style consumers like PubSub)
> * Mirror header constants from each component's *Constants interface (Javadoc
> reference back to the source) to avoid creating hard dependencies from
> camel-telemetry to the Google component modules
> * Tag selection rules established in the AWS work:
> ** Never emit values that may contain secrets, PII or large binary payloads
> (audio/video/image bytes, embeddings, vocabulary lists, secret values, etc.)
> ** Prefer the request _target_ over the response payload
> ** Don't surface IAM-principal / identity ARNs / account IDs (the same
> minimization principle that drove KMS keyId, CloudTrail username, IAM
> userName, EKS roleArn, Comprehend endpointArn drops)
> * Register decorators alphabetically in
> META-INF/services/org.apache.camel.telemetry.SpanDecorator
> * Unit tests covering header-to-tag extraction for each decorator
> Suggested batching (similar in size to AWS PRs, ~5-7 components per PR):
> * Messaging & storage: PubSub, PubSub Lite, Storage, BigQuery, Firestore
> * Workspace / productivity: Calendar, Drive, Mail, Sheets
> * AI/ML & misc: Speech-to-Text, Text-to-Speech, Vision, VertexAI, Functions,
> Secret Manager
--
This message was sent by Atlassian Jira
(v8.20.10#820010)