The Strait SDKs give workers a rich telemetry API in TypeScript, Go, and Python. Report progress, save checkpoints for resumption, and emit structured logs — all queryable in the dashboard.
Heartbeats
Configurable interval
Checkpoints
Durable state snapshots
Logging
Structured key-value logs
Continuation
Resume from last checkpoint
Health scoring
Auto-computed from telemetry
Clients
TypeScript, Go, Python + REST API
func handler(ctx context.Context, run strait.Run) error {
sdk := run.SDK()
sdk.Log(ctx, "starting", strait.KV{"order_id", run.Payload["id"]})
sdk.Heartbeat(ctx)
result, err := processOrder(ctx, run.Payload)
if err != nil {
sdk.Checkpoint(ctx, strait.Checkpoint{
Step: "process",
State: partialState,
})
return err
}
sdk.Log(ctx, "completed", strait.KV{"total", result.Total})
return nil
}