IngestionConfigService.CreateIngestionConfig to register the schema of your telemetry, then streams compact structured messages to Sift over gRPC. This approach reduces packet size and improves throughput compared to schemaless methods.
CreateIngestionConfigRequest
FlowConfig
A flow is a named group of channels whose values are sent together in one request.ChannelConfig
Channel ordering
The order of channels in aFlowConfig must be preserved exactly when sending values in an IngestWithConfigDataStreamRequest. Sift attributes each value to a channel by its position in the list.
If data is available for some channels in a flow but not others, send google.protobuf.Empty in the position of the missing channel to maintain correct ordering.
Example
Given a flowreading with two channels—a double channel followed by a string channel:
IngestWithConfigDataStreamRequest
Errors that occur when
end_stream_on_validation_error is false appear in Sift’s Data Processing dashboard (https://app.siftstack.com/manage/data-processing).
Retrieving an ingestion config by client key
Updating an ingestion config
To add new flows after creation, send aCreateIngestionConfigFlowRequest to IngestionConfigService. Adding flows and channels is backwards compatible. Modifying or removing existing flows or channels is not.