Bloccs.Web.Panels.Messages (bloccs_web v0.2.0)

Copy Markdown View Source

Panel 5 — packages moving through the network. A live throughput chart over the per-second Bloccs.Web.Telemetry.Flow buckets, plus a scrolling feed of recent message events: each edge a message crossed (from.port → to.port), its outcome, the emitting node's latency, and — when Bloccs.Inspect capture is enabled (bloccs 0.3+) — a bounded, redacted snapshot of the payload.

Click a row to inspect it: the full payload plus the hop it took, highlighted on a mini-topology. Filterable by node and outcome.

Summary

Functions

Filter flow events by node and outcome (used by the panel and the live view).

Find the journey hop with this msg_id (string) and edge to token. Used by the live view.

Whether a flow event is the currently-selected one. Identified by its lineage msg_id plus the edge to (one emit can fan to several edges → same msg_id, distinct rows) and at (a node may re-emit the same id is not expected, but at keeps it exact). Stable across live feed updates.

Functions

filtered(events, arg2)

Filter flow events by node and outcome (used by the panel and the live view).

find_hop(events, msgid, to_token)

Find the journey hop with this msg_id (string) and edge to token. Used by the live view.

render(assigns)

Attributes

  • network (:any) (required)
  • base_path (:string) (required)
  • flow (:map) - Defaults to %{events: [], series: [], rate: 0}.
  • filters (:map) - Defaults to %{node: nil, outcome: nil}.
  • selected (:any) - Defaults to nil.
  • journey (:list) - Defaults to [].
  • paused (:boolean) - Defaults to false.

same?(e, s)

Whether a flow event is the currently-selected one. Identified by its lineage msg_id plus the edge to (one emit can fan to several edges → same msg_id, distinct rows) and at (a node may re-emit the same id is not expected, but at keeps it exact). Stable across live feed updates.