Я сделал сценарий bash для Nagios, чтобы протестировать его с помощью Nagiosgraph. Однако файлы Rrd для этого сценария не создаются. Плагины по умолчанию, которые поставляются с Nagios, хорошо работают с Nagiosgraph, и файлы rrd этих плагинов также присутствуют.

Вот сценарий:

#!/bin/bash

checkgpu=$( nvidia-smi --format=csv --query-gpu=utilization.gpu | awk '/[[:digit:]]+[[:space:]]%/ { tot+=$1;cnt++ } END { print tot/cnt }' | cut -d$

output="Load Average: $checkgpu"

if [ $checkgpu -ge 0 ]
then
    echo "OK- $output"
    exit 0
elif [ $checkgpu -eq 101 ]
then
    echo "WARNING- $output"
    exit 1
elif [ $checkgpu -eq 102 ]
then
    echo "CRITICAL- $output"
    exit 2
else
echo "UNKNOWN- $output"
exit 3
fi

Что мне сделать, чтобы этот скрипт работал с данными Nagiosgraph / Performance?

0
tirogza 27 Янв 2021 в 13:31

1 ответ

Лучший ответ

Ознакомьтесь с руководящими принципами разработки: https://nagios-plugins.org/doc/ Guidelines.html # AEN200

Ожидаемый формат для perfdata - 'label'=value[UOM];[warn];[crit];[min];[max], который может выглядеть примерно так:

PING ok - Packet loss = 0%, RTA = 0.80 ms | percent_packet_loss=0, rta=0.80

Символ вертикальной черты (|) сообщает Nagios о том, что вывод плагина завершился и начались данные о производительности.

Обратите внимание, что в приведенном выше примере не указывается единица измерения (единица измерения, например, процент), а также не указываются пороги предупреждения / крита для данных или минимальные / максимальные значения для графиков. Все это необязательно.

1
pzkpfw 27 Янв 2021 в 15:12