sirupsen/logrus · error
cannot create hook from nil logger
Error message
cannot create hook from nil logger
What it means
Error "cannot create hook from nil logger" thrown in sirupsen/logrus.
Source
Thrown at hooks/slog/slog.go:73
// [HookOptions.LevelMapper] to customize the mapping.
type Hook struct {
logger *slog.Logger
opts HookOptions
}
var _ logrus.Hook = (*Hook)(nil)
// NewHook creates a [logrus.Hook] that sends logs to the provided [slog.Logger].
//
// This hook is intended to be used during transition from Logrus to slog,
// or as a shim between different parts of your application or different
// libraries that depend on different loggers.
//
// The provided logger must not be nil. NewHook panics if logger is nil.
// If opts is nil, the default options are used.
func NewHook(logger *slog.Logger, opts *HookOptions) *Hook {
if logger == nil {
panic("cannot create hook from nil logger")
}
if opts == nil {
opts = &HookOptions{}
}
return &Hook{
logger: logger,
opts: *opts,
}
}
// toSlogLevel maps a Logrus level using LevelMapper or the default mapping.
func (h *Hook) toSlogLevel(level logrus.Level) slog.Level {
if h.opts.LevelMapper != nil {
return h.opts.LevelMapper(level)
}
return Level(level).Level()
}
View on GitHub (pinned to 457e372460)
When it happens
Trigger: Thrown at hooks/slog/slog.go:73 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of sirupsen/logrus@457e372460 (2026-08-16).
Data as JSON: /api/errors/fe15f955d3e060ae.
Report an issue: GitHub.