MCPcopy
hub / github.com/netdata/netdata / resolveEffectivePolicy

Function resolveEffectivePolicy

src/go/plugin/framework/chartengine/policy.go:12–46  ·  view source on GitHub ↗
(cfg engineConfig, templatePolicy *charttpl.Engine)

Source from the content-addressed store, hash-verified

10)
11
12func resolveEffectivePolicy(cfg engineConfig, templatePolicy *charttpl.Engine) (AutogenPolicy, metrixselector.Selector, error) {
13 autogen := defaultAutogenPolicy()
14 var selector metrixselector.Selector
15
16 if templatePolicy != nil {
17 if templatePolicy.Autogen != nil {
18 normalized, err := normalizeAutogenPolicy(AutogenPolicy{
19 Enabled: templatePolicy.Autogen.Enabled,
20 MaxTypeIDLen: templatePolicy.Autogen.MaxTypeIDLen,
21 ExpireAfterSuccessCycles: templatePolicy.Autogen.ExpireAfterSuccessCycles,
22 })
23 if err != nil {
24 return AutogenPolicy{}, nil, fmt.Errorf("template engine.autogen: %w", err)
25 }
26 autogen = normalized
27 }
28
29 if templatePolicy.Selector != nil {
30 compiled, err := compileEngineSelector(*templatePolicy.Selector)
31 if err != nil {
32 return AutogenPolicy{}, nil, fmt.Errorf("template engine.selector: %w", err)
33 }
34 selector = compiled
35 }
36 }
37
38 if cfg.autogenOverride.set {
39 autogen = cfg.autogenOverride.value
40 }
41 if cfg.selectorOverride.set {
42 selector = cfg.selectorOverride.value
43 }
44
45 return autogen, selector, nil
46}

Callers 1

LoadMethod · 0.85

Calls 4

defaultAutogenPolicyFunction · 0.85
normalizeAutogenPolicyFunction · 0.85
compileEngineSelectorFunction · 0.85
ErrorfMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…