What is the problem you're trying to solve
logrus is in maintenance mode and is no longer receiving significant development beyond security and bugfixes. Structured logging has continued to evolve in Go and recently the standard-library log/slog package was accepted for inclusion in a future version of Go.
Describe the solution you'd like
With containerd 2.0, we should consider replacing logrus with an alternative. Some possibilities:
Additional context
Replacing logrus has changes for clients of containerd (such as Moby) and plugins like shims. We'd also need to adapt containerd's logging helper (log.G(ctx)) to work with a new logging implementation.
What is the problem you're trying to solve
logrus is in maintenance mode and is no longer receiving significant development beyond security and bugfixes. Structured logging has continued to evolve in Go and recently the standard-library
log/slogpackage was accepted for inclusion in a future version of Go.Describe the solution you'd like
With containerd 2.0, we should consider replacing logrus with an alternative. Some possibilities:
log/slog(via https://pkg.go.dev/golang.org/x/exp/slog for now, until it is integrated in the standard library)Additional context
Replacing logrus has changes for clients of containerd (such as Moby) and plugins like shims. We'd also need to adapt containerd's logging helper (
log.G(ctx)) to work with a new logging implementation.