Documentation
¶
Overview ¶
result tries to
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func WorstState ¶
Determines the worst state from a list of states
Helps combining an overall states, only based on a few numbers for various checks.
Order of preference: Critical, Unknown, Warning, Ok
Types ¶
type Overall ¶
type Overall struct { Summary string Outputs []string // Deprecate this in a future version PartialResults []PartialResult // contains filtered or unexported fields }
So, this is the idea: A check plugin has a single Overall (singleton) Each partial thing which is tested, gets its own subcheck The results of these may be relevant to the overall status in the end or not, e.g. if a plugin tries two different methods for something and one suffices, but one fails, the whole check might be OK and only the subcheck Warning or Critical.
Example (WithSubchecks) ¶
var overall Overall example_perfdata := perfdata.Perfdata{Label: "pd_test", Value: 5, Uom: "s"} pd_list := perfdata.PerfdataList{} pd_list.Add(&example_perfdata) subcheck := PartialResult{ Output: "Subcheck1 Test", Perfdata: pd_list, } subcheck.SetState(check.OK) overall.AddSubcheck(subcheck) overall.Add(0, "bla") fmt.Println(overall.GetOutput())
Output: states: ok=1 [OK] bla \_ [OK] Subcheck1 Test |pd_test=5s
func (*Overall) Add ¶
Add State explicitely Hint: This will set stateSetExplicitely to true
Example ¶
overall := Overall{} overall.Add(check.OK, "One element is good") overall.Add(check.Critical, "The other is critical") fmt.Printf("%#v\n", overall)
Output: result.Overall{oks:1, warnings:0, criticals:1, unknowns:0, Summary:"", stateSetExplicitely:true, Outputs:[]string{"[OK] One element is good", "[CRITICAL] The other is critical"}, PartialResults:[]result.PartialResult(nil)}
func (*Overall) AddSubcheck ¶ added in v0.4.0
func (o *Overall) AddSubcheck(subcheck PartialResult)
func (*Overall) GetOutput ¶
Example ¶
overall := Overall{} overall.Add(check.OK, "One element is good") overall.Add(check.Critical, "The other is critical") fmt.Println(overall.GetOutput())
Output: states: critical=1 ok=1 [OK] One element is good [CRITICAL] The other is critical
type PartialResult ¶ added in v0.4.0
type PartialResult struct { Output string Perfdata perfdata.PerfdataList PartialResults []PartialResult // contains filtered or unexported fields }
func (*PartialResult) AddSubcheck ¶ added in v0.4.0
func (o *PartialResult) AddSubcheck(subcheck PartialResult)
func (*PartialResult) GetStatus ¶ added in v0.5.0
func (s *PartialResult) GetStatus() int
nolint: unused
func (*PartialResult) SetDefaultState ¶ added in v0.5.0
func (s *PartialResult) SetDefaultState(state int) error
func (*PartialResult) SetState ¶ added in v0.5.0
func (s *PartialResult) SetState(state int) error
func (*PartialResult) String ¶ added in v0.4.0
func (s *PartialResult) String() string