lausser / check_ups_health

A plugin (monitoring-plugin, not nagios-plugin, see also http://is.gd/PP1330) for uninterruptible power supplies.
GNU General Public License v2.0
7 stars 7 forks source link

Perfdata incorrect in default mode and unclear when using warningx and criticalx #1

Closed rbressers closed 7 years ago

rbressers commented 9 years ago

When using the script, the default perfdata output for e.g. "capacity" is incorrect. The output contains a leading colon ":", which cannot be interpreted by Icinga2 as performance data (see output below). While browsing the code, i see that warning and critical values lower than the "normal" value are stated with a leading colon. A --warningx or --criticalx argument should include a colon for these values for proper use? I'm not sure.

$ /opt/monitoring/plugins/check_ups_health --community \ --hostname * --mode battery-health OK - battery status is batteryNormal, capacity is 100.00%, output load 38.00%, temperature is 33.00C, remaining battery run time is 19.00min | 'capacity'=100%;25:;10:;0;100 'output_load'=38%;75;85;0;100 'battery_temperature'=33;70;80;; 'remaining_time'=19;10:;8:;; 'input_voltage'=227;;;; 'input_frequency'=50;;;; 'output_voltage'=231;;;; 'output_frequency'=50;;;;

MarcusCaepio commented 8 years ago

Hi rbressers, did you already fixed this in any way?

lausser commented 8 years ago

'capacity'=100%;25:;10:;0;100 If capacity falls below 25% -> warning If capacity falls below 10% -> critical What's wrong with that?

MarcusCaepio commented 8 years ago

Das Problem ist, glaube ich, dass der Output von der Capacity nicht als perfdata gedeutet wird. Ich beobachte das gleiche Phänomen.
Label Value Warning Critical capacity 100% % % Hier müsste eigtl 80 und 90 stehen. Ich habe auch bemerkt, dass ich die Parameter unterschiedlich angeben muss, um den Check zum laufen zu bringen: die Werte der Capicity muss ich mit % Zeichen angeben, die der outputload musste ich ohne % Zeichen angeben. Ich führe den Check momentan so aus: ./check_ups_health --warningx output_load=80 --warningx battery_temperature=24 --warningx capacity=50% --criticalx output_load=90 --criticalx battery_temperature=26 --criticalx capacity=50% Ist die Wertübergabe so richtig?

Die Ausgabe der Perfdata ist: Label Value Warning Critical capacity 100% % % remaining_time 23.00 0.00 0.00 output_load 75% 80% 90% input_frequency 49.00 - - battery_temperature 19.00 24.00 26.00

Hier fehlt die Cap und auch die Batterie Zeit, die default jedoch einen Standard Wert hat.. Auch fällt mir auf, dass die Batterie Time irrtümlich einen Fehler ausspuckt. Ich habe eine Batterie Zeit von 23 Minuten, möchte ich eine Warnung bei 15 Minuten haben, bekomme ich eine Warnung obwohl ich noch 23 Minuten habe. Also Warnung < Wert = Warnung, Stelle ich den Wert über die 23 Minuten, erhalte ich einen Ok. Ist hier der Check evtl. verkehrt herum?

lausser commented 8 years ago

Die "%" bei warningx/criticalx weglassen, da das Plugin ja weiß, daß es sich hier um Prozentangaben handelt. --warningx remaining_time=15: 15: = Warning, wenn kleiner als 15

MarcusCaepio commented 8 years ago

Guten Morgen und danke für das Feedback :) Also muss ich bei Capacity und Time die Werte mit : angeben, damit das Plugin weiß, dass der Alarm gegeben werden muss, wenn value < warningx/criticalx, statt value > warningx/criticalx? Denn lasse ich bei cap und time die : hinter dem Wert weg, bekomme ich einen Fehler, weil value > warningx/criticalx. Falls dem so ist, sorgen die : aber leider dafür, dass die Werte von Icingaweb2 nicht richtig interpretiert werden: image

lausser commented 8 years ago

Performancedaten und Thresholds sind hier sehr gut beschrieben

https://nagios-plugins.org/doc/guidelines.html#THRESHOLDFORMAT

und sollten nach über 10 Jahren Nagios&Co eigentlich von jedem Tool in diesem Umfeld korrekt implementiert werden. Wenn es Anzeigefehler gibt, dann bitte bei Icinga Web melden.

Gruß,

Gerhard

Von: MarcusCaepio [mailto:notifications@github.com] Gesendet: Mittwoch, 20. April 2016 06:58 An: lausser/check_ups_health Cc: Gerhard Lausser; Comment Betreff: Re: [lausser/check_ups_health] Perfdata incorrect in default mode and unclear when using warningx and criticalx (#1)

Guten Morgen und danke für das Feedback :) Also muss ich bei Capacity und Time die Werte mit : angeben, damit das Plugin weiß, dass der Alarm gegeben werden muss, wenn value < warningx/criticalx, statt value > warningx/criticalx? Denn lasse ich bei cap und time die : hinter dem Wert weg, bekomme ich einen Fehler, weil value > warningx/criticalx. Falls dem so ist, sorgen die : aber leider dafür, dass die Werte von Icingaweb nicht richtig interpretiert werden: https://cloud.githubusercontent.com/assets/7324088/14663830/1e5feb60-06c5-11e6-8fc7-0ce88e94d044.png—You are receiving this because you commented.Reply to this email directly or view it on GitHubhttps://github.com/lausser/check_ups_health/issues/1#issuecomment-212257142https://github.com/notifications/beacon/AAMJOFBlsqk4mVhfzOg9FLso-x-VRIGYks5p5bJXgaJpZM4GeiIR.gif

MarcusCaepio commented 8 years ago

Mach ich, danke :)

Gruß, Marcus