Существует ли возможность контролировать https сайты в nagios по прокси?

"Pentium (D) ЦП, 2.80 ГГц" являются названием процессора, переданным гипервизором (через cpuid), "3.95 ГГц", является предполагаемой частотой, вычисленной гостем. Калибровочная стандартная программа, вероятно, перепутана виртуализацией..., если гость использует TSC для калибровки и хоста, ЦП не имеет, синхронизировал TSCs между ядрами затем от гостя POV, который TSC отметит на неправильном уровне (это могло даже пойти назад); Pentium D синхронизировал TSCs., таким образом, проблема в другом месте... SpeedStep, вероятно (хост изменяет частоту ЦП и гостя, не знает об изменении).

Вы выполняете последнюю версию VBox?

2
задан 31 May 2011 в 08:42
4 ответа

напишите сценарий его! запишите свой собственный плагин с помощью wget или завихрение

например:

#!/bin/bash
wget -t 5 --timeout 30 -O /dev/null -o /dev/null -e http_proxy=your.proxy:port https://www.google.com
if [ $? -eq 0 ] ; then
  echo all ok
  exit 0
else
  echo not ok
  exit 2
fi

можно, очевидно, расширить его, например, проверять содержание возвращенной страницы.

7
ответ дан 3 December 2019 в 08:58

Недавно у меня была такая же проблема, поэтому я заключил подход wget в плагин Nagios https://github.com/SimpleFinance/nagios-check-http-proxy

-1
ответ дан 3 December 2019 в 08:58

check_http, безусловно, работает для веб-сайтов https, и '-j CONNECT' необходим, поскольку у вас уже есть, но вам также понадобится -H .. И ваш прокси-сервер настроен на сквозной https

пример:

check_http -I PROXYHOST -p PROXYPORT -H FQDN -u RELATIVE-URI -S -j CONNECT -s STRING-TO-MATCH

  • У меня были лучшие результаты при использовании относительного uri, а не полного url .. например: '/ vendors' вместо ' http://example.com/vendors '
  • Конечно - s используется только в том случае, если вы пытаетесь сопоставить определенную строку в возвращаемом содержимом
  • Наконец, есть среды, в которых лучше всего заключить wget или curl в сценарий
1
ответ дан 3 December 2019 в 08:58

Небольшое усовершенствование ответа pQd:

#!/bin/bash
URL=$1
RESPONSE_CODE=${2:-200}
TIMEOUT=${3:-10}

case $RESPONSE_CODE in
401)
  EXPECTED_RETURN_CODE=6
  ;;
200)
  EXPECTED_RETURN_CODE=0
  ;;
*)
  EXPECTED_RETURN_CODE=0
  ;;
esac


start=`date +%s`
wget -t 1 --timeout ${TIMEOUT} -O /dev/null -o /dev/null  -e http_proxy=PUTYOURPROXYHERE:8080 ${URL}
WGET_RETURN_CODE=$?
end=`date +%s`

PERFDATA="time=$(expr ${end} - ${start})s"

if [ ${WGET_RETURN_CODE} -eq ${EXPECTED_RETURN_CODE} ] ; then
  echo "HTTP OK: HTTP/1.1 ${RESPONSE_CODE} OK for ${URL}|${PERFDATA}"
  exit 0
else
  echo "HTTP CRITICAL: Did not receive HTTP/1.1 ${RESPONSE_CODE} for ${URL}|${PERFDATA}"
  exit 2
fi

Измените прокси-сервер и назовите его так:

$ bash check_http_proxy.sh https://stackoverflow.com/ 200 3
HTTP OK: HTTP/1.1 200 OK for https://stackoverflow.com/|time=1s
or
$ bash check_http_proxy.sh http://www.httpwatch.com/httpgallery/authentication/authenticatedimage/default.aspx 401 10
HTTP OK: HTTP/1.1 401 OK for http://www.httpwatch.com/httpgallery/authentication/authenticatedimage/default.aspx|time=0s
1
ответ дан 3 December 2019 в 08:58

Теги

Похожие вопросы