master
go 29 lines 848 Bytes
Raw
1 // SPDX-License-Identifier: GPL-3.0-or-later
2
3 package secretsctl
4
5 import (
6 "context"
7 "log/slog"
8
9 "github.com/netdata/netdata/go/plugins/logger"
10 "github.com/netdata/netdata/go/plugins/plugin/agent/secrets/secretstore"
11 )
12
13 func secretStoreResolveContext(log *logger.Logger, cfg secretstore.Config) context.Context {
14 if cfg == nil {
15 return logger.ContextWithLogger(context.Background(), log)
16 }
17 return secretStoreResolveContextForKey(log, cfg.ExposedKey(), cfg.Kind(), cfg.Name())
18 }
19
20 func secretStoreResolveContextForKey(log *logger.Logger, key string, kind secretstore.StoreKind, name string) context.Context {
21 if log != nil {
22 log = log.With(
23 slog.String("secretstore", key),
24 slog.String("secretstore_kind", string(kind)),
25 slog.String("secretstore_name", name),
26 )
27 }
28 return logger.ContextWithLogger(context.Background(), log)
29 }