Interface AiAgentLogFormat
- All Known Implementing Classes:
AcpLogFormat,AntigravityLogFormat,ClaudeCodeLogFormat,CodexLogFormat,CursorLogFormat,GrokBuildLogFormat,KiroLogFormat,OpenCodeLogFormat,PiLogFormat
AiAgentLogParser.ParsedLine.
Each AiAgentTypeHandler returns its own AiAgentLogFormat via AiAgentTypeHandler.getLogFormat(), allowing third-party agent handlers to supply custom log
parsing without modifying the core parser.
Implementations should return null for any JSON structure they do not recognise; the
parser will then fall through to the shared format and generic fallback.
-
Method Summary
Modifier and TypeMethodDescriptionclassify(long lineNumber, net.sf.json.JSONObject json) Attempt to classify a single JSON object into a parsed event.default List<AiAgentLogParser.ParsedLine> classifyAll(long lineNumber, net.sf.json.JSONObject json) Attempt to classify a JSON object that may contain multiple displayable events.default List<AiAgentLogParser.ParsedLine> classifyRaw(long lineNumber, String line) Attempt to classify a non-JSON log line (raw text) into a parsed event.
-
Method Details
-
classify
Attempt to classify a single JSON object into a parsed event.- Parameters:
lineNumber- 1-based line number in the raw log filejson- the parsed JSON object for this line- Returns:
- a classified
AiAgentLogParser.ParsedLine, ornullif this format does not handle the given JSON structure
-
classifyRaw
Attempt to classify a non-JSON log line (raw text) into a parsed event.Implementations that handle non-JSON text lines (e.g. ANSI-colored
>prefixed headless output) should override this method. The default returnsnull, meaning the line should be kept as-is.- Parameters:
lineNumber- 1-based line number in the raw log fileline- the raw (non-JSON) text line- Returns:
- a list of classified lines, or
nullif this format does not handle raw text
-
classifyAll
Attempt to classify a JSON object that may contain multiple displayable events.Implementations that emit at most one event can rely on this default. Returning
nullstill means the format did not recognize the input; an empty list means it recognized the input but intentionally produced no visible events.
-