MCPcopy
hub / github.com/grafana/tempo / NewOverrides

Function NewOverrides

modules/overrides/overrides.go:28–55  ·  view source on GitHub ↗

NewOverrides makes a new Overrides service. We store the supplied overrides in a global variable to ensure per-tenant overrides are defaulted to those values. As such, the last call to NewOverrides will become the new global defaults.

(cfg Config, validator Validator, registerer prometheus.Registerer)

Source from the content-addressed store, hash-verified

26// are defaulted to those values. As such, the last call to NewOverrides will
27// become the new global defaults.
28func NewOverrides(cfg Config, validator Validator, registerer prometheus.Registerer) (Service, error) {
29 if cfg.ConfigType == ConfigTypeLegacy {
30 // always log a warning for ConfigTypeLegacy
31 level.Warn(log.Logger).Log(
32 "msg", "DEPRECATED: legacy overrides config format is in use. Legacy overrides are deprecated and will be removed in a future release. "+
33 "Please migrate your overrides config to the new overrides format.",
34 )
35
36 if !cfg.EnableLegacyOverrides {
37 return nil, fmt.Errorf(
38 "DEPRECATED: legacy overrides config format detected but legacy overrides are disabled by default. Legacy overrides will be removed in a future release. " +
39 "Migrate your overrides config to the new scoped format, or set -config.enable-legacy-overrides=true (or enable_legacy_overrides: true in YAML) to continue using legacy overrides temporarily")
40 }
41
42 }
43
44 o, err := newRuntimeConfigOverrides(cfg, validator, registerer)
45 if err != nil {
46 return nil, err
47 }
48
49 if cfg.UserConfigurableOverridesConfig.Enabled {
50 // Wrap runtime config with user-config overrides module
51 o, err = newUserConfigOverrides(&cfg.UserConfigurableOverridesConfig, o)
52 }
53
54 return o, err
55}

Calls 3

newUserConfigOverridesFunction · 0.85
LogMethod · 0.65