In meinem Artikel Überlange Ausgaben und Performance Daten nicht ausgeben gehe ich auf das Thema kurze Textausgaben ja schon ein. Während der zweite Artikel betreffend die Performancedaten die eigentliche Ausgabe des Plugins tatsächlich verkürzt, behandelt der erste Artikel lediglich die Frage, wie die vom Plugin ausgegebene Datenmenge im Monitoring System sinnvoll dargestellt werden kann. Die Anzahl der Bytes, die vom Plugin in Richtung Monitoring-System geschaufelt werden, reduziert sich durch die in dem Artikel beschriebenen Maßnahmen nicht – und die kann erheblich sein, wenn ein Filer mit tausenden von Festplatten geprüft wird. Teile des Monitoring-Frameworks wie beispielsweise gearmand kommen dann nicht mehr mit.

Aus diesem Grund haben wir die Möglichkeit zur Beschränkung der Textausgaben wieder aktiviert. Diese befinden sich direkt im aufrufenden Skript check_netapp_pro.pl.

max_length_single_line => 140, # single line and first line
max_length_multi_line => 65_536 - 140, # multi line for Nagios 3.x

Die Werte oben erklären sich wie folgt:

140 Zeichen passen in ein SMS und sollten daher für das Nagios Macro SERVICEOUTPUT nicht überschritten werden.

64kiB (65.536 Byte) ist das Limit für einige Tools im Nagios Kontext. Wenn wir die Länge des  SERVICEOUTPUT abziehen, bekommen wir den Maximalwert für den LONGSERVICEOUTPUT. (Die Subtraktion ist natürlich eine Spielerei die hier vor allem die Zusammenhänge erklären soll.)

Diese Wert gelten dann für alle Checks, die mit check_netapp_pro.pl aufgerufen werden. Bedenken muss man allerdings, dass bei einem Update selber eingestellte Werte überschrieben werden, da ja die Datei ausgetauscht wird.

Und was passiert, wenn die vom Plugin erstellte Textausgabe eine dieser Grenzen überschreitet? Ganz einfach, der jeweilige Abschnitt wird auf die angegebene Grenze verkürzt und am Ende durch [...] als gekürzt gekennzeichnet.

Ein Beispiel bei Abfrage von einem Simulator mit dem für den produktiven EInsatz eher nicht so geeigneten Wert vom 100 für max_length_multi_line:

$ ./check_netapp_pro.pl Usage -H sim83n1 -o volume --perf_format=suppress
NETAPP_PRO USAGE WARNING - 4 volumes checked, 0 critical and 1 warning
No SVC-ACK relevant changes in reason.
vol0: 1.5GiB (WARNING)
vol12: 0.0G [...] |

Zum Vergleich die ungekürzte Ausgabe inklusive der Perfdaten:

NETAPP_PRO USAGE WARNING - 4 volumes checked, 0 critical and 1 warning
No SVC-ACK relevant changes in reason.
vol0: 1.5GiB (WARNING)
vol12: 0.0GiB
vol0: 0.0GiB
vol11: 0.0GiB
| vol0=1595994112B;1428077772.8;1836099993.6;0;2040111104 vol0=425984B;1428077772.8;1836099993.6;0;2040111104 vol11=122880B;13946060.8;17930649.6;0;19922944 vol12=10686464B;13946060.8;17930649.6;0;19922944