Ad Widget

Collapse

Использование Item с другого хоста

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • novat
    Junior Member
    • Aug 2015
    • 18

    #1

    Использование Item с другого хоста

    Добрый день уважаемые форумчане, сразу извиняюсь за невнятное название. Нужна Ваша помощь - ужо голову сломал.
    В чем проблема: с host1 собираются логи службы

    Item:
    eventlog[TranslationMemoryExchange-Core/Operational,,,,92]

    На него вешается trigget. Все это хорошо работает.
    Но возникла необходимость (идея) отделить hardware мониторинг от software. Вычитал, что можно создать "виртуальный" host2 и использовать значения реального host1
    Вот на этом и споткнулся.
    На "виртуальном хосте" пробовал создать item
    eventlog["Host1:TranslationMemoryExchange-Core/Operational,,,,92"]
    Вроде триггер ошибку не выдает, но и данные не собирает, почему - потому что zabbix_agent.config название машины отличаются от название хоста в zabbix. Но и на это можно было бы закрыть глаза, но таких виртуальных хостов нужно 3 - на 3 службы которые крутятся на одной машине.

    Одним словом - HELPPPP )
  • sadman
    Senior Member
    • Dec 2010
    • 1611

    #2
    "использовать значения реального host1 в host2" можно через вычисляемый элемент данных. На него и триггеры вешать будет возможно.

    Comment

    • novat
      Junior Member
      • Aug 2015
      • 18

      #3
      Спасибо за ответ, тоже думал в этом направлении, и даже теоретически можно навесить триггер на вычисляемое значение, но столкнулся с технической стороной:
      вычисляемое значение должно быть либо integer либо float, но не как не string (char).
      Значит нужно обернуть конструкцию
      eventlog[TranslationMemoryExchange-Core/Operational,,,,92] еще в одну функцию, а как???
      Честно говоря, не нашел информации (может плохо искал) по вложенности функций в вычисляемых значениях триггера. По идее это значение нужно обернуть в функцию, которая вернет true|false как в триггере и уже на это значение можно повесить еще один триггер.
      {Host1:eventlog[TranslationMemoryExchange-Core/Operational,,,,92].logeventid(92)}=1 and {Host1:eventlog[TranslationMemoryExchange-Core/Operational,,,,92].nodata(300)}=1
      А вот как это реализовать в вычисляемом выражении - не приложу ума.

      А костыль в виде стороннего приложения по сбору логов ставить не охота.
      Last edited by novat; 06-09-2015, 18:04.

      Comment

      • sadman
        Senior Member
        • Dec 2010
        • 1611

        #4
        Да, со строчными значениям засада выходит...

        Но, вот, положим logeventid возвращает 1/0 - вполне себе цифровое значение, а nodata(), наверняка, можно вычислять для вновьсозданного вычисляемого элемента данных.

        Т.е. в "виртуальном хосте" будет вычисляемый элемент, использующий logeventid, который можно запихнуть в триггер и в триггере же от него взять nodata

        Не прокатит? Теоретически должно сработать.

        Comment

        • novat
          Junior Member
          • Aug 2015
          • 18

          #5
          Спасибо. Сегодня попробую.
          В общем решил - делюсь.
          logeventid("TEST-MEMOQ5Serv:eventlog[OnlineAnalyticsAutomation-Core/Admin,,,,41]",41)
          Last edited by novat; 09-09-2015, 10:53.

          Comment

          Working...