Ad Widget

Collapse

Какую функцию применить в триггере?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • D.Frolov
    Member
    • Apr 2020
    • 95

    #1

    Какую функцию применить в триггере?

    1. Есть сервер Zabbix
    2. Есть сервер Nginx
    3. Мониторим файл Nginx /var/log/nginx/access.log
    4. Для мониторинга файла из пункта 3 используется элемент -> zabbix агент ->log[файл,<регулярное выражение>]
    5. Из файла /var/log/nginx/access.log, агент используя <регулярное выражение>, на сервер отдает только строки например с содержанием 404 ошибки
    6. Итого, в Мониторинг -> последние данные, мы имеем по данному элементу только нужные строки

    Вопрос, как настроить триггер на появление строки?

    З,Ы. Вариант использования в триггере функции - регулярного выражения кажется излишним, ведь эти строки и так попали туда с использованием этого же регулярного выражения (данный вариант рабочий, но мне кажется, должно быть, "реакция на появление данных", пробовал nodata, то ли не понял, как работает, то ли не подходит...
  • Hamardaban
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • May 2019
    • 2713

    #2
    Использовать функцию триггера str
    или сразу использовать элемент данных с ключом log.count и триггер last()>0

    Comment

    • D.Frolov
      Member
      • Apr 2020
      • 95

      #3
      Originally posted by Hamardaban
      Использовать функцию триггера str
      или сразу использовать элемент данных с ключом log.count и триггер last()>0
      1. Str пока и использую, но это тоже своего рода регулярка
      2. А вот за это спасибо!!! буду пробывать log.count и триггер last()>0

      Comment

      • Kos
        Senior Member
        Zabbix Certified SpecialistZabbix Certified Professional
        • Aug 2015
        • 3404

        #4
        Выражение last()>0 для текстового (log) элемента данных? Боюсь, здесь что-то не то. Вероятно, имелось в виду strlen()>0?

        D.Frolov , попытайтесь сформулировать словами: при каких условиях Вы хотите, чтобы триггер срабатывал, а при каких - гасился? И должен ли он срабатывать повторно в случае, если он уже сработал, ещё не погас, но при этом пришло новое событие?

        И ещё мелочь:
        используется элемент -> zabbix агент ->log[файл,<регулярное выражение>]
        Так работать не будет. Элементы данных log/logrt/eventlog поддерживаются только для типов "zabbix агент (активный)".
        Last edited by Kos; 27-04-2020, 08:16.

        Comment

        • Hamardaban
          Senior Member
          Zabbix Certified SpecialistZabbix Certified Professional
          • May 2019
          • 2713

          #5
          log.count - не текстовый. для него last вполне работает.

          Comment

          • Kos
            Senior Member
            Zabbix Certified SpecialistZabbix Certified Professional
            • Aug 2015
            • 3404

            #6
            Originally posted by Hamardaban
            log.count - не текстовый. для него last вполне работает.
            Виноват, проглядел. Вы правы.

            Comment

            • D.Frolov
              Member
              • Apr 2020
              • 95

              #7
              Originally posted by Hamardaban
              Использовать функцию триггера str
              или сразу использовать элемент данных с ключом log.count и триггер last()>0
              А так по факту тоже ни то, я же уже вычитываю элемент журнала, мне нужно его значение, а тут второй элемент надо вычитывать...Вообще понятно, что в Zabbix видимо данный вопрос более гибко не решается

              Comment

              Working...