Ad Widget

Collapse

Получение данных с http страницы

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • NvAriec
    Member
    • Jan 2012
    • 67

    #1

    Получение данных с http страницы

    Добрый день.
    Можно ли штатными средствами Zabbix получить данные с HTML страницы?

    Есть страница с количеством лицензий (использованных и занятых).
    Хочу сделать регулярное выражение, чтобы на выходе получалось числовое значение.

    Вариант с WGET и парсинг выдачи на самом сервере zabbix рассматривал.
  • aib
    Senior Member
    • Jan 2014
    • 1615

    #2
    Рассмотрите также вариант с curl и парсингом.
    Например, я использую такой UserParameter для zabbix agent:
    Code:
    UserParameter=currency[*],/usr/bin/curl -s http://themoneyconverter.com/$1/$2.aspx | grep "Latest Exchange Rates" | awk '{printf "%3.4f\n", $$8;}'
    При вызове с параметрами currency[RUB,EUR] получаю количество евро в 1 рубле
    Code:
    # zabbix_get -s localhost -k currency[rub,eur]
    [B]0.0138[/B]
    Точно также можно парсить любую страничку, получаемую по html
    Sincerely yours,
    Aleksey

    Comment

    • NvAriec
      Member
      • Jan 2012
      • 67

      #3
      Дело в том, что на сервере который мониторится стоит Windows. А делать запросы с Zabbix сервера не хотелось бы. Поэтому и хотел собрать какой-нибудь элемент данных на том сервере который мониторится.

      Comment

      • aib
        Senior Member
        • Jan 2014
        • 1615

        #4
        Что мешает поставить Zabbix Agent на любой хост, который видит вашу Windows машину? Включая саму её?
        А уж там и использовать парсинг HTTP
        Sincerely yours,
        Aleksey

        Comment

        • NvAriec
          Member
          • Jan 2012
          • 67

          #5
          Ничего не мешает. Просто лишнее звено, которое не хочется добавлять в работу.
          Хочется независимого решения.

          Comment

          • aib
            Senior Member
            • Jan 2014
            • 1615

            #6
            Originally posted by NvAriec
            Ничего не мешает. Просто лишнее звено, которое не хочется добавлять в работу.
            Хочется независимого решения.
            Простите, я вас не очень понимаю.
            Ваши слова
            Поэтому и хотел собрать какой-нибудь элемент данных на том сервере который мониторится.
            Я воспринял как возможность собирать данные на сервере Windows.
            Данные можно собрать из Zabbix Agentа, установленного на сервере.
            В конфигурации этого агента можно добавить UserParameter, чтобы Zabbix Server мог запрашивать данные с этого агента о лицензиях.

            Что-то я не так понял?
            У вас в голове совсем другая конфигурация?

            Объясните на пальцах. Может, тогда смогу понять-подсказать.

            Просто для вашей ситуации существует несколько решений. Все из них - в рамках Zabbix.
            - userparameter на агенте на сервере Windows
            - userparameter на агенте на постороннем сервере
            - userparameter на агенте на сервере Zabbix
            - externalscripts на сервере Zabbix
            - script на сервере Windows, отправляющий данные через zabbix_sender

            Просто выберите, что вам кажется проще, естественнее и понятнее.
            Sincerely yours,
            Aleksey

            Comment

            Working...