BroadwayCloudPubSub. Streaming. GrpcClient
(BroadwayCloudPubSub v2.0.0-rc.0)
Copy Markdown
View Source
The default gRPC client for BroadwayCloudPubSub.Producer.
Implements BroadwayCloudPubSub.Streaming.Client using the grpc library
with the Google.Pubsub.V1.Subscriber.Stub generated stub.
This module handles:
- Token fetching and channel connection (with TLS and adapter configuration)
- Bidirectional
StreamingPullstream management - Unary
AcknowledgeandModifyAckDeadlineRPCs with telemetry spans
Telemetry
This module emits the following telemetry events:
[:broadway_cloud_pub_sub, :streaming, :grpc_client, :ack, :start | :stop | :exception]— emitted as a span when sending anAcknowledgeunary RPC.Measurements: as described in
:telemetry.span/3. Metadata:%{name: broadway_name, subscription: subscription, count: ack_count}[:broadway_cloud_pub_sub, :streaming, :grpc_client, :modack, :start | :stop | :exception]— emitted as a span when sending aModifyAckDeadlineunary RPC.Measurements: as described in
:telemetry.span/3. Metadata:%{name: broadway_name, subscription: subscription, count: ack_count}
Custom BroadwayCloudPubSub.Streaming.Client implementations that wish to emit
the same events should use the same event name prefix and metadata shape.