sirupsen/logrus · error

cannot create handler from nil logger

Error message

cannot create handler from nil logger

What it means

Error "cannot create handler from nil logger" thrown in sirupsen/logrus.

Source

Thrown at hooks/slog/handler.go:58

	// fields holds attributes from prior WithAttrs calls, already resolved
	// under the group prefix that applied when they were added.
	fields logrus.Fields

	// groups is the current group name stack for attributes added later.
	groups []string
}

var _ slog.Handler = (*Handler)(nil)

// NewHandler creates a [slog.Handler] that writes to the provided
// [logrus.Logger].
//
// The provided logger must not be nil. NewHandler panics if logger is nil.
// If opts is nil, the default options are used.
func NewHandler(logger *logrus.Logger, opts *HandlerOptions) *Handler {
	if logger == nil {
		panic("cannot create handler from nil logger")
	}
	if opts == nil {
		opts = &HandlerOptions{}
	}
	return &Handler{
		logger: logger,
		opts:   *opts,
	}
}

// toLogrusLevel maps a slog level using LevelMapper or the default mapping.
func (h *Handler) toLogrusLevel(level slog.Level) logrus.Level {
	if h.opts.LevelMapper != nil {
		return h.opts.LevelMapper(level)
	}
	return SlogLevel(level).Level()
}

View on GitHub (pinned to 457e372460)

When it happens

Trigger: Thrown at hooks/slog/handler.go:58 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/96dc194a064c1022. Report an issue: GitHub.