Log inGet started
World

Builtin Library

Branchmain
Branchesmainpublish
Commit65083fe8f2

README.md

summary

How many lines, of what severity, from where, and which messages repeat — the shape of the noise before you go looking inside it. Also the cheapest check for whether anything went wrong.

Takes the same filters as search, origin and caller among them, so it can describe a slice as well as the whole ring. It answers in counts rather than lines, so order, context and group, which shape a list of lines, are refused rather than ignored.

Returns

fieldmeaning
matchedlines the filter selects
bufferedlines the ring currently holds
capacityhow many it can hold
droppedlines evicted for capacity since the last clear
cursorhighest seq assigned — hand back to search as since
engine_cursorthe same, with your own tool traffic left out
mcpheld lines recording your own tool calls
countslifetime errors and warnings, which survive eviction
by_levellifetime count per severity
by_typecount per subsystem
by_entitycount per entity, for the lines a script logged
repeatedthe most-repeated message templates, most frequent first

by_type, by_entity and repeated are computed over the lines the filter selects, bounded by limit (default 2000). The lifetime counts and the ring figures come from the engine's own counters and are not bounded that way.

cursor is what makes incremental reading work: read it before an action, hand it back as since afterwards, and you see only what that action logged. engine_cursor excludes your own calls, so it stands still on an engine whose loop has stopped, however many times you poll it — which cursor does not, since the act of asking is itself logged.