You don't have to know the question when you store the answer.
Schema-on-read happens at three points — collect, ingest and search — so
a field you never thought to extract is still there when you need it at
2am. Here's a raw line from the incident above:
{"ts":"2026-07-21T14:03:12.481Z","svc":"payments-gateway","host":"ip-10-4-22-041","lvl":"error","msg":"acquire timeout","pool":{"name":"ledger-db","size":32,"in_use":32,"wait_ms":4188},"trace_id":"0af7651916cd43dd8448eb211c80319c"}
pool.wait_ms was never in a mapping,
never in a pipeline, and never cost anything to keep. It becomes a
queryable field the moment you ask for it.
Splunk → SonQL translation table, 50 most-used commands →