Die Lösung war so leicht und so offensichtlich, dass ich sie nicht gesehen habe
und viel zu kompliziert gedacht habe:
Durch hinzufügen der Zeile 21 habe ich das Verhalten erreicht,
wie unsere User das wünschen: Fehlen die Daten in der Agent Section wird der Check rot.
Oder genauer gesagt:
Wenn in der info list kein thing drinn ist, dann hau einfach ein critical raus für item:
14 def json_health_check(item, params, info):
15 for status, thing in info:
16 if item == thing:
17 if status == 'healthy' or status == 'UP' or status == 'ok':
18 return 0, "%s status is %s" % (item, status)
19 else:
20 return 2, "%s status is %s" % (item, status)
21 return 2, "could not get current item data"
Ja, der check ist noch einer mit der alten plugin API geschrieben.