Expand description
§faucet-sink-pubsub
Google Cloud Pub/Sub sink connector for
faucet-stream: batched
publish to a topic with a configurable value_format (json / string /
bytes), optional per-message ordering_key (field or dot-path) that
enables message ordering, bounded publish concurrency, and per-message
partial-failure outcomes that route to a DLQ.
Delivery is at-least-once — Pub/Sub provides no primitive that composes
with faucet’s exactly-once watermark model, so this sink does not advertise
idempotent writes. De-duplicate downstream on a business key carried in
the payload or an attribute — the server assigns a fresh message_id to
every publish, so a re-sent record never shares its id.
Structs§
- Pubsub
Connection - Connection settings shared by the Pub/Sub source and sink. Flattened into
each connector config via
#[serde(flatten)], soproject_id/endpoint/emulator_host/credentialsappear at the config top level. - Pubsub
Sink - Google Cloud Pub/Sub sink. See the crate README for semantics.
- Pubsub
Sink Config - Configuration for
PubsubSink.
Enums§
- Ordering
Key - How each message’s ordering key is derived. When any non-empty ordering key is produced, message ordering is enabled on the publisher.
- Pubsub
Credentials - How to authenticate with Google Cloud Pub/Sub.
- Value
Format - How each record is encoded into the Pub/Sub message
datablob.
Constants§
- DESCRIPTOR
- The connector’s static descriptor (RFC 0013): its capabilities, answered from config alone.
- MAX_
BATCH - Pub/Sub caps a single
Publishrequest at 1000 messages.