Unify logging with slog#161
Conversation
There was a problem hiding this comment.
Pull request overview
This PR migrates shim/vminitd/libkrun console output toward a unified slog-based structured logging flow, forwarding VM console lines into structured records and configuring slog as the default logger in both shim and vminitd.
Changes:
- Add
internal/loggingutilities to configure shim slog output and to forward VM console output as structuredslogrecords. - Update
vminitdto emit JSONsloglogs to/dev/console(to avoid polluting kmsg) and support debug level via aslog.LevelVar. - Adjust console log forwarding in libkrun and update file-dumping to log file contents as structured fields; bump
github.com/containerd/logdependency.
Reviewed changes
Copilot reviewed 8 out of 9 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| internal/vm/libkrun/instance.go | Switch console forwarding to the new logging.ForwardConsoleLogs helper. |
| internal/systools/dump.go | Change file dumping to structured debug logging with file content included. |
| internal/logging/shim.go | Add shim-specific slog setup using containerd’s log FIFO. |
| internal/logging/logging.go | Add console-line forwarding and JSON-log re-emission utilities. |
| internal/logging/logging_test.go | Add benchmarks and correctness tests for the new logging utilities. |
| go.mod | Bump github.com/containerd/log to a newer pseudo-version. |
| go.sum | Add checksums for the updated github.com/containerd/log version. |
| cmd/vminitd/main.go | Configure slog JSON logging to /dev/console and wire debug level. |
| cmd/containerd-shim-nerdbox-v1/main.go | Initialize shim slog logging and disable shim’s default logger setup. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 9 out of 10 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 9 out of 10 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 9 out of 10 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Signed-off-by: Derek McGowan <[email protected]>
Output all shim, kernel, and vminit logs as slot entries, using the default text output of slog by default.