roadmap: introspection & observability shipped as RFC 016
Chunks 1-4 all landed; mark the introspection block done (was 'Needs an RFC'), matching the send_after in-place SHIPPED treatment above it.
This commit is contained in:
+12
-4
@@ -164,10 +164,18 @@ gen_server time layer (RFC 015, shipped above) lands on this, adding only the
|
|||||||
channel-targeting `send_after_to` sibling.
|
channel-targeting `send_after_to` sibling.
|
||||||
|
|
||||||
#### Introspection — process_info / get_state / tree dump
|
#### Introspection — process_info / get_state / tree dump
|
||||||
`trace.rs` is the seed. What an actor is parked on, queue depth, stack size; a
|
✅ SHIPPED (RFC 016) — runtime introspection & observability, superseding the
|
||||||
gen_server state snapshot; a supervision-tree walk. The native edge over tokio —
|
RFC 000 / 006 / 009 sketches. The mechanism is an internal synchronous read,
|
||||||
actors already carry pid, name, parent where tokio tasks are anonymous — so it
|
not a C ABI: `snapshot()` / `actor_info(pid)` return owned data (pid, names,
|
||||||
costs little and differentiates a lot. Needs an RFC.
|
fine scheduling state, parent edge, trap, monitor/link/joiner counts, mailbox
|
||||||
|
depth) carrying `SNAPSHOT_FORMAT_VERSION` (Chunk 1, ps-semantics tearing);
|
||||||
|
`tree()` folds that into a parentage forest with orphan re-rooting (Chunk 3).
|
||||||
|
Per-actor counters — timeslice overruns, messages-received, and a feature-gated
|
||||||
|
approximate time budget — ride hot `AtomicU64` slot fields (Chunk 2). The live
|
||||||
|
`observer` gen_server is the read transport over that primitive, behind the
|
||||||
|
off-by-default `observer` feature (Chunk 4); it is the read half of the future
|
||||||
|
RFC 003 control plane. Wedged-runtime dumps stay gdb's job, and park-reason
|
||||||
|
detail / C ABI are explicit non-goals.
|
||||||
|
|
||||||
#### Worker pool behaviour
|
#### Worker pool behaviour
|
||||||
Supervised, interchangeable workers with restart semantics over a shared inbox
|
Supervised, interchangeable workers with restart semantics over a shared inbox
|
||||||
|
|||||||
Reference in New Issue
Block a user