Перейти к содержанию

CheckMK

animails предоставляет возможность проверки обновлений с помощью собственного скрипта обновления.

Если вы хотите проверять наличие обновлений animails с помощью checkmk, вы можете создать исполняемый файл в каталоге local агента checkmk (обычно /usr/lib/check_mk_agent/local/) с именем animails_update и следующим содержимым:

#!/bin/bash
cd /opt/animails/ && ./update.sh --check-tags >/dev/null
status=$?
if [ $status -eq 3 ]; then
  echo "0 \"animails_update\" animails_update=0;1;;0;1 No newer tags available."
elif [ $status -eq 0 ]; then
  echo "1 \"animails_update\" animails_update=1;1;;0;1 New tag is available.\nThe changes can be found here: https://github.com/animails/animails/releases/latest"
else
  echo "3 \"animails_update\" - Unknown output from update script ..."
fi
exit

Чтобы проверять наличие любых изменений в коде, просто создайте исполняемый файл со следующим содержимым:

#!/bin/bash
cd /opt/animails/ && ./update.sh -c >/dev/null
status=$?
if [ $status -eq 3 ]; then
  echo "0 \"animails_update\" animails_update=0;1;;0;1 No updates available."
elif [ $status -eq 0 ]; then
  echo "1 \"animails_update\" animails_update=1;1;;0;1 Updated code is available.\nThe changes can be found here: https://github.com/animails/animails/commits/master"
else
  echo "3 \"animails_update\" - Unknown output from update script ..."
fi
exit

Если animails установлен не в директорию /opt/, скорректируйте путь во второй строке.

После этого выполните переинвентаризацию сервисов для вашего хоста animails в checkmk, и новый тип проверки с именем animails_update станет доступен для выбора.

Скрипт animails_update будет запускаться при каждом опросе агента checkmk. Вы можете кэшировать результат, поместив скрипт в подпапку, название которой соответствует количеству секунд кэширования.
Например, путь /usr/lib/check_mk_agent/local/3600/ будет кэшировать ответ на 3600 секунд (1 час).

Скриншоты

Обновления отсутствуют

Если обновлений или новых тегов нет, отображается статус OK.

No update available

Доступны новые обновления

Если доступны обновления или новые теги, отображается статус WARN.

Updates available

Если вместо этого требуется статус CRIT, замените 7-ю строку следующим кодом:

echo "2 \"animails_update\" animails_update=1;1;;0;1 Updated code is available.\nThe changes can be found here: https://github.com/animails/animails/commits/master"

Подробный вывод проверки

Long check output

  • Содержит ссылку на коммиты animails в GitHub, если обновления доступны.
  • Также отображаются метрики (не только при наличии обновлений):
    • 0 = Обновлений нет
    • 1 = Доступны новые обновления