LogTapConfig

constructor(pattern: Pattern = Pattern("kuilt-log-tap"), syncInterval: Duration = 1.seconds, pullTimeout: Duration = 10.seconds, pullSettleStep: Duration = 200.milliseconds, quilterConfig: QuilterConfig = QuilterConfig())

Parameters

pattern

the rendezvous pattern the host opens and a client joins. A single stable name is fine — extraction is point-to-point (one host, one or more pullers).

syncInterval

how often the host re-reads the device's log buffer and offers any newly captured records for replication. New records also flow on demand via sync.

pullTimeout

the upper bound on a single LogTapClient.pull — how long it waits for the host to connect and its logs to replicate in before giving up. A pull that exceeds it throws rather than returning a partial result.

pullSettleStep

after the first records arrive, how long LogTapClient.pull waits for the replicated state to stop advancing before treating the snapshot as complete. A short quiet window absorbs records that land in the same burst without padding the common case.

quilterConfig

replication tuning passed through to the underlying replicator. Tests set expectVirtualTime = true to silence the test-dispatcher diagnostic.

Field-for-field identical to MetricTapConfig except the default pattern (kuilt-log-tap vs kuilt-metric-tap). The two are deliberately not unified into one type: a typealias cannot carry a per-alias default argument, so collapsing them would erase the distinct default rendezvous names — a silent wire-name change. They stay separate so each keeps its own default pattern.