NewGoKitWrapper (logs/gokit.go)

traefik · pkg/observability/logs/gokit.go · go · MIT
infra

Zero‑dependency wrapper converting a zerolog logger to a go‑kit logger function.

// Source: https://github.com/traefik/traefik | License: MIT | Copyright 2016-2020 Containous SAS; 2020-2025 Traefik Labs
// Provided via justclaw.it.com; keep this notice with the code.
package logs

import (
	kitlog "github.com/go-kit/log"
	"github.com/rs/zerolog"
)

func NewGoKitWrapper(logger zerolog.Logger) kitlog.LoggerFunc {
	if logger.GetLevel() > zerolog.DebugLevel {
		return func(args ...any) error { return nil }
	}

	return func(args ...any) error {
		logger.Debug().CallerSkipFrame(2).MsgFunc(msgFunc(args...))
		return nil
	}
}

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key