Skip to content

Unify logging with slog#161

Open
dmcgowan wants to merge 1 commit intocontainerd:mainfrom
dmcgowan:unify-logging
Open

Unify logging with slog#161
dmcgowan wants to merge 1 commit intocontainerd:mainfrom
dmcgowan:unify-logging

Conversation

@dmcgowan
Copy link
Copy Markdown
Member

Output all shim, kernel, and vminit logs as slot entries, using the default text output of slog by default.

Copilot AI review requested due to automatic review settings April 14, 2026 08:11
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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/logging utilities to configure shim slog output and to forward VM console output as structured slog records.
  • Update vminitd to emit JSON slog logs to /dev/console (to avoid polluting kmsg) and support debug level via a slog.LevelVar.
  • Adjust console log forwarding in libkrun and update file-dumping to log file contents as structured fields; bump github.com/containerd/log dependency.

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.

Comment thread internal/logging/shim.go Outdated
Comment thread internal/logging/logging.go
Comment thread internal/logging/logging.go Outdated
Comment thread internal/systools/dump.go
Copilot AI review requested due to automatic review settings April 15, 2026 14:45
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread internal/logging/logging.go
Comment thread internal/logging/shim_windows.go
Signed-off-by: Derek McGowan <derek@mcg.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants