logger: use names from opts

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
Василий Толстов 2023-10-17 01:04:59 +03:00
parent 17698440ed
commit d4e6fb26f7
2 changed files with 13 additions and 6 deletions

View File

@ -20,17 +20,20 @@ var (
fatalValue = slog.StringValue("fatal")
)
var renameAttr = func(_ []string, a slog.Attr) slog.Attr {
func (s *slogLogger) renameAttr(_ []string, a slog.Attr) slog.Attr {
switch a.Key {
case slog.SourceKey:
source := a.Value.Any().(*slog.Source)
a.Value = slog.StringValue(source.File + ":" + strconv.Itoa(source.Line))
a.Key = "caller"
a.Key = s.opts.SourceKey
case slog.TimeKey:
a.Key = "timestamp"
a.Key = s.opts.TimeKey
case slog.MessageKey:
a.Key = s.opts.MessageKey
case slog.LevelKey:
level := a.Value.Any().(slog.Level)
lvl := slogToLoggerLevel(level)
a.Key = s.opts.LevelKey
switch {
case lvl < DebugLevel:
a.Value = traceValue
@ -76,7 +79,7 @@ func (s *slogLogger) Clone(opts ...options.Option) Logger {
l.leveler = new(slog.LevelVar)
handleOpt := &slog.HandlerOptions{
ReplaceAttr: renameAttr,
ReplaceAttr: s.renameAttr,
Level: l.leveler,
AddSource: true,
}
@ -105,7 +108,7 @@ func (s *slogLogger) Attrs(attrs ...interface{}) Logger {
nl.leveler.Set(s.leveler.Level())
handleOpt := &slog.HandlerOptions{
ReplaceAttr: renameAttr,
ReplaceAttr: nl.renameAttr,
Level: s.leveler,
AddSource: true,
}
@ -132,7 +135,7 @@ func (s *slogLogger) Init(opts ...options.Option) error {
s.leveler = new(slog.LevelVar)
handleOpt := &slog.HandlerOptions{
ReplaceAttr: renameAttr,
ReplaceAttr: s.renameAttr,
Level: s.leveler,
AddSource: true,
}

View File

@ -0,0 +1,4 @@
package wrapper
func NewWrapper(l logger.Logger) logger.Logger {
}