BeamConsole.Lifecycle.Event (beam_console v0.3.0)

Copy Markdown View Source

Describes one safe, retained observation in the process lifecycle timeline.

Events distinguish their evidence source and certainty. They contain opaque entity IDs and bounded display data, never PIDs or raw exit terms.

Summary

Types

certainty()

@type certainty() ::
  :direct | :strong | :medium | :sampled | :missed | :partial | :ambiguous

detail_value()

@type detail_value() :: String.t() | atom() | integer() | boolean() | nil

evidence()

@type evidence() :: :monitor | :slot_reconciliation | :snapshot_diff | :recorder

kind()

@type kind() ::
  :recording_started
  | :reset
  | :gap
  | :observed_start
  | :observed_stop
  | :terminated
  | :replacement_observed

t()

@type t() :: %BeamConsole.Lifecycle.Event{
  application: String.t() | nil,
  certainty: certainty(),
  details: %{optional(atom()) => detail_value()},
  entity_id: String.t() | nil,
  evidence: evidence(),
  id: String.t(),
  kind: kind(),
  label: String.t() | nil,
  monotonic_ms: integer(),
  node_id: String.t() | nil,
  observed_at_ms: integer(),
  reason: BeamConsole.ReasonSummary.t() | nil,
  related_entity_id: String.t() | nil,
  segment: non_neg_integer(),
  sequence: non_neg_integer()
}