Validates the hard resource limits used by the in-memory flight recorder.
Defaults keep recording bounded independently of browser count. The
:subscribers mode activates recording only while the console has at least
one subscriber; :always is an explicit higher-overhead choice.
Summary
Functions
Returns the recorder's conservative default limits.
Loads :beam_console, :recorder application configuration and applies overrides.
Builds recorder configuration from validated keyword overrides.
Builds recorder configuration and raises ArgumentError when it is invalid.
Types
@type mode() :: :subscribers | :always
@type t() :: %BeamConsole.Recorder.Config{ byte_limit: pos_integer(), chart_points_limit: pos_integer(), event_limit: pos_integer(), frame_limit: pos_integer(), mode: mode(), pending_slot_ms: pos_integer(), reconciliation_limit: pos_integer(), retention_ms: pos_integer(), timeline_limit: pos_integer(), watch_limit: pos_integer() }
Functions
@spec defaults() :: t()
Returns the recorder's conservative default limits.
Loads :beam_console, :recorder application configuration and applies overrides.
Runtime overrides take precedence over application configuration.
@spec new(keyword()) :: {:ok, t()} | {:error, validation_error()}
Builds recorder configuration from validated keyword overrides.
Unknown fields and internally inconsistent limits return structured errors.
Builds recorder configuration and raises ArgumentError when it is invalid.