feat: resident runtime, shutdown command, observatory, and IPL logging hardening
- keep BEDS resident after IPL and coordinate clean shutdown - propagate AMQP shutdown command across dispatcher pool - add structured IPL milestone/event-chain logging with root GUID context - add optional trace_on config for verbose method-entry diagnostics - add dev purge-on-IPL controls for admin/logger collections - add log level showcase events after IPL node-green - add Mongo logger store helpers for chain/root lookup and purge - add/modernize BEDS Observatory log_dumper utility UI and root record view - refresh source headers and wiki docs for current architecture/runtime - add architecture visual brief for leadership/image-generation workflows
This commit is contained in:
@@ -1,5 +1,17 @@
|
||||
# Queue Topology
|
||||
|
||||
## Current Runtime Topology (2026-04)
|
||||
|
||||
The active Rust runtime currently uses a unified dispatcher model:
|
||||
|
||||
1. Single primary events queue per environment tag (`{queue_tag}events`).
|
||||
2. Unified dispatcher pool consumes from that queue.
|
||||
3. Queue binding uses topic wildcard (`#`) on `beds.events`.
|
||||
4. `shutdown` operation is handled as a broker command that triggers coordinated global shutdown.
|
||||
5. Legacy `rec.read` and `rec.write` broker files remain in repository history/reference, but runtime path is centered on unified dispatcher workers.
|
||||
|
||||
The broader broker matrix below remains useful as historical and planned topology context.
|
||||
|
||||
## Overview
|
||||
|
||||
BEDS uses a single RabbitMQ topic exchange for all data events. Topic exchanges route messages based on a dotted routing key — this gives BEDS fine-grained control over which brokers receive which events without the overhead of managing multiple exchanges.
|
||||
|
||||
Reference in New Issue
Block a user