AyCode.Core/AyCode.Services/Loggers
Loretta ffd537b5eb Refactor: Split and expand project-level documentation
- Move all major feature docs (logging, binary, SignalR, DataSource) into per-project `docs/` folders with dedicated Markdown files.
- Split monolithic docs into focused files: `BINARY_FORMAT.md`, `BINARY_FEATURES.md`, `BINARY_OPTIONS.md`, `LOGGING.md`, `LOGGING_SERVER.md`, `LOGGING_REMOTE.md`, `SIGNALR.md`, `SIGNALR_SERVER.md`, `SIGNALR_DATASOURCE.md`.
- Update all references in `README.md`, `copilot-instructions.md`, `GLOSSARY.md`, and `ARCHITECTURE.md` to point to the correct per-project doc.
- Add documentation tables to each project’s `README.md` and clarify folder structure.
- Update `.csproj` files to include `docs/**/*.md` for packaging.
- Remove obsolete/moved docs from the solution file.
- Ensure all technical debt warnings and cross-references are preserved and accurate.
- No code changes; documentation only.
2026-03-29 22:16:28 +02:00
..
AcBrowserConsoleLogWriter.cs AcSignalRClient; AcBrowserLogWriter... 2025-09-01 16:19:01 +02:00
AcHttpClientLogItemWriter.cs
AcSignaRClientLogItemWriter.cs Implement SignalRLoggerClient 2025-09-02 11:48:05 +02:00
README.md Refactor: Split and expand project-level documentation 2026-03-29 22:16:28 +02:00

README.md

Loggers

Remote log writers for sending log items over HTTP, SignalR, or to the browser console. All three implement IAcLogWriterClientBase.

For full logging architecture see docs/LOGGING.md. For core logger and writer abstractions see AyCode.Core/Loggers/README.md.

Key Files

  • AcHttpClientLogItemWriter.cs — Abstract structured writer extending AcLogItemWriterBase<TLogItem>. Sends log items via HttpClient.PostAsJsonAsync() (fire-and-forget). Manages its own HttpClient + HttpClientHandler. HTTP/2 default.
  • AcBrowserConsoleLogWriter.cs — Blazor browser console writer extending AcTextLogWriterBase (text branch). Uses IJSRuntime.InvokeVoidAsync() to call console.info / console.warn / console.error based on LogLevel.
  • AcSignaRClientLogItemWriter.cs — SignalR log transport writer extending AcLogItemWriterBase<AcLogItemClient>. Sends structured log items to AcLoggerSignalRHub via HubConnection.SendAsync("AddLogItem", logItem). Manages connection lifecycle (StartConnection/StopConnection). Converts TimeStampUtc to UTC before sending (SignalR doesn't transmit DateTime.Kind).