32f26272ae
Five tools under one repo, all docs organized per DOCS-GUIDE.md: - aalogcli: .NET 4.8 / x86 CliFx CLI for reading System Platform binary logs (*.aaLGX) for LLM debugging, built on aaOpenSource/aaLog. Commands: last, tail, range, unread, fields. Stable JSON envelope under --llm-json. Build template under lib/build/ for rebuilding aaLogReader.dll. - aot: ArchestrA Object Toolkit 2014 v4.0 reference material. Dev guide (Markdown converted from CHM), API reference for the ArchestrA.Toolkit namespace, and the Monitor / Watchdog VS sample solutions. - graccesscli: .NET 4.8 / x86 CliFx CLI that automates Galaxy configuration via the ArchestrA GRAccess COM interop. Includes session daemon, IPC protocol, and llm-json envelope contract. - grdb: SQL/DDL exploration of the Galaxy Repository database. DDL captures, reusable queries, hierarchy / contained-name <-> tag-name translation notes. - histdb: LLM-oriented reference for AVEVA Historian retrieval. INSQL linked-server, extension tables, every wwXxx time-domain extension, every retrieval mode, alarm/event SQL recipes, REST API. Distilled from the 243-page Historian Retrieval Guide. Root contains: - CLAUDE.md: thin index pointing into each tool's README. - DOCS-GUIDE.md: doctrine for organizing docs for LLM consumption. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2.7 KiB
2.7 KiB
aalog — LogRecord field reference
The --llm-json envelope emits records of shape LogRecordDto, an LLM-friendly subset of the upstream aaLogReader.LogRecord (declared in the bare aaLogReader namespace despite the file path). File-format internals (RecordLength, OffsetToPrevRecord, OffsetToNextRecord) and the redundant EventDate / EventTime / EventMillisec triple are dropped.
Fields
| Field | Type | Source | Meaning |
|---|---|---|---|
MessageNumber |
ulong |
LogRecord.MessageNumber |
Monotonic record id assigned by the logger. Stable across reads of the same log directory; useful as a cursor. |
TimestampUtc |
string |
LogRecord.EventDateTimeUtc |
Event time in UTC, ISO-8601 with Z suffix and millisecond precision (2026-05-03T13:59:42.117Z). |
TimestampLocal |
string |
LogRecord.EventDateTimeLocal |
Event time in the host's local zone, ISO-8601 without offset (2026-05-03T08:59:42.117). |
Level |
string |
LogRecord.LogFlag |
Severity / category. Common values: Info, Warning, Error, Trace, Debug. |
Component |
string |
LogRecord.Component |
Originating subsystem (e.g. aaEngine, Bootstrap, aaGR, aaIDE). Best filter axis for narrowing scope. |
ProcessName |
string |
LogRecord.ProcessName |
Name of the OS process that emitted the record. |
ProcessId |
uint |
LogRecord.ProcessID |
OS process id. |
ThreadId |
uint |
LogRecord.ThreadID |
OS thread id within the process. |
SessionId |
string |
LogRecord.SessionID |
Session identifier; often empty. |
Host |
string |
LogRecord.HostFQDN |
Fully-qualified host name at time of emission. |
Message |
string |
LogRecord.Message |
Free-form message body. |
Backward / forward compatibility
- Adding a new field to
LogRecordDtois non-breaking. Agents that pin the existing field set continue to work. - Renaming or removing a field is breaking. If it ever happens, bump this doc and the
--llm-jsonexample inusage.mdin the same change. - The upstream library's underlying
LogRecordmay change shape acrossaaLogReader.dllversions. The CLI shields callers from that — only fields mapped explicitly inLogRecordDto.From(src/AaLog.Cli/Output/LogRecordDto.cs) reach the JSON envelope.
Quick reference at runtime
aalog fields
prints the same field list to stdout in plain text — useful when the caller can't load this file.