GoKitLogToSlog convert go-kit/log to slog usage: logutil.GoKitLogToSlog(gokitLogger)
(logger log.Logger)
| 10 | // GoKitLogToSlog convert go-kit/log to slog |
| 11 | // usage: logutil.GoKitLogToSlog(gokitLogger) |
| 12 | func GoKitLogToSlog(logger log.Logger) *slog.Logger { |
| 13 | levelVar := slog.LevelVar{} |
| 14 | promLogger, ok := logger.(*PrometheusLogger) |
| 15 | if !ok { |
| 16 | levelVar.Set(slog.LevelDebug) |
| 17 | } else { |
| 18 | switch promLogger.logLevel.String() { |
| 19 | case "debug": |
| 20 | levelVar.Set(slog.LevelDebug) |
| 21 | case "info": |
| 22 | levelVar.Set(slog.LevelInfo) |
| 23 | case "warn": |
| 24 | levelVar.Set(slog.LevelWarn) |
| 25 | case "error": |
| 26 | levelVar.Set(slog.LevelError) |
| 27 | } |
| 28 | } |
| 29 | return slog.New(sloggk.NewGoKitHandler(logger, &levelVar)) |
| 30 | } |