footprintjs - v11.2.0
    Preparing search index...

    Interface AttachRecorderOptions

    Options bag accepted by every attach*Recorder call.

    delivery: 'deferred' opts the recorder into the bounded capture queue ("one beat behind"); absent / 'inline' keeps the historical synchronous call — byte-identical to the pre-RFC path.

    The remaining fields configure the executor's ONE shared dispatcher and are applied when the FIRST deferred attach creates it; later attaches passing different values get a dev-mode warning and keep the original configuration (one queue per executor — per-recorder queues would break the total cross-channel order).

    interface AttachRecorderOptions {
        capture?: CapturePolicy;
        delivery?: ObserverDelivery;
        flushBudgetMs?: number;
        maxQueue?: number;
        overflow?: OverflowPolicy;
        sampleEvery?: number;
    }
    Index
    capture?: CapturePolicy

    Payload materialization at capture time. Default 'clone' — your recorder's hooks receive the SAME event shape as inline delivery (structuredCloned; e.key/e.value/e.runtimeStageId all work unchanged), so { delivery: 'deferred' } is a drop-in port. 'summary' — a bounded type/size/preview digest (PayloadSummary) instead of the event shape: cheaper capture for telemetry-only consumers that don't read domain fields. 'ref' — pass-through by reference; the caller asserts immutability (dev-mode warns).

    delivery?: ObserverDelivery

    'deferred' = capture → queue → next-checkpoint delivery. Default 'inline'.

    flushBudgetMs?: number

    Per-checkpoint flush budget, ms (A1) — default 2; Infinity = full drain.

    maxQueue?: number

    Queue bound — default 10 000.

    overflow?: OverflowPolicy

    Overflow policy at maxQueue — default 'drop-oldest'.

    sampleEvery?: number

    'sample' overflow only — admit 1 in this many saturated arrivals.