Documentation Index
Fetch the complete documentation index at: https://docs.podflare.ai/llms.txt
Use this file to discover all available pages before exploring further.
Every Podflare HTTP request gets a
http_request tracing span. Every
executor operation (create, exec, fork, merge_into, destroy)
emits a nested event inside that span with structured fields. Pass a
traceparent header (or SDK kwarg) and Podflare binds your upstream
trace_id + parent_span_id to every log line.Propagation
Supply a W3C Trace Contexttraceparent string (00-<trace>-<span>-<flags>)
and the SDK forwards it on every HTTP request:
What shows up in hostd logs
Default (text) formatter:trace_id + parent_span_id
— ready for grep-based correlation or pipe-into-structured-log-aggregator.
JSON formatter (PODFLARE_LOG_FORMAT=json):
Fields Podflare emits
Per-HTTP-request root span. Fields:
method— HTTP method.path— request path, e.g./v1/sandboxes/:id/exec.trace_id— from incomingtraceparent, empty if not provided.parent_span_id— ditto.
sandbox claimed, VM booted, fork complete,
agent connected, etc., with the operation’s relevant fields (template,
sandbox id, durations in ms, source = pool/on_demand/snapshot).
Recommended: ship logs as OTel events
Podflare emits structuredtracing spans. You can bridge those to OTLP
by running hostd with tracing-opentelemetry
configured (planned; contributions welcome). Until then the simplest path
is: set PODFLARE_LOG_FORMAT=json, pipe stdout to vector / otel-collector
/ fluent-bit configured as an OTLP exporter.
Environment
Set to
json for one-line-per-event JSON (span fields + message).SDK-side: fallback value for
Client(traceparent=...) / Sandbox(traceparent=...)
when none is passed explicitly. Useful for quick experimentation.hostd-side: tracing-subscriber EnvFilter
syntax.
trace / debug levels surface more detail per operation.
