diff --git a/promslog/slog.go b/promslog/slog.go index f77ce91e..1677605a 100644 --- a/promslog/slog.go +++ b/promslog/slog.go @@ -66,6 +66,17 @@ var ( default: } + return a + } + truncateSourceAttrFunc = func(groups []string, a slog.Attr) slog.Attr { + if a.Key != slog.SourceKey { + return a + } + + if src, ok := a.Value.Any().(*slog.Source); ok { + a.Value = slog.StringValue(filepath.Base(src.File) + ":" + strconv.Itoa(src.Line)) + } + return a } ) @@ -165,8 +176,9 @@ func New(config *Config) *slog.Logger { } logHandlerOpts := &slog.HandlerOptions{ - Level: config.Level.lvl, - AddSource: true, + Level: config.Level.lvl, + AddSource: true, + ReplaceAttr: truncateSourceAttrFunc, } if config.Style == GoKitStyle {