Ad Widget

Collapse

Не выводятся данные с log файла стороннего приложения

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • GurzH
    Junior Member
    • Oct 2024
    • 6

    #1

    Не выводятся данные с log файла стороннего приложения

    Глубочайше приветствую, вас, джентльмены!

    Будучи неопытным пользователем zabbix, я столкнулся с такой проблемой:

    Не выводит данные с лог файла. Вообще никакие. Я пытался задать ему триггер, но тоже безуспешно.


    Контекст:
    • ОС: Windows 10
    • Лог-файл: C:\Terminal\Logs\get-log-file.log
    • Zabbix Agent установлен и настроен, данные с хоста собираются корректно.
    Задача:
    • Отслеживать появление ключевых слов, таких как "ERROR" в лог-файле.


    Вот мой "Элемент данных":

    Click image for larger version

Name:	Снимок85858.png
Views:	107
Size:	42.4 KB
ID:	493244

    P.S. Также пробовал logrt и ничего не изменилось.



    Подскажите, пожалуйста, что я делаю неверно?

    Буду очень признателен любому совету.




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

    #2
    Добрый день!
    Убедитесь в том, что агент нормально работает в активном режиме. Есть ли на данном узле сети другие элементы данных, использующие тип "Zabbix агент (активный)", работают ли они?
    Стандартные вещи, которые нужно проверить при настройке агентов в активном режиме:
    • убедиться, что имя хоста, используемое агентом, точно (с учётом регистра букв) совпадает с тем, как прописано для узла сети в веб-интерфейсе Zabbix ("техническое" имя, не "видимое). Смотреть параметр "Hostname" и лог-файл агента при старте.
    • убедиться в том, что в конфиг-файле агента в параметре "ServerActive=" прописана ссылка (IP-адрес либо DNS-имя) на сервер Zabbix (либо на Zabbix прокси, если этот узел сети мониторится через прокси).

    Comment

    • GurzH
      Junior Member
      • Oct 2024
      • 6

      #3
      Originally posted by Kos
      Добрый день!
      Убедитесь в том, что агент нормально работает в активном режиме. Есть ли на данном узле сети другие элементы данных, использующие тип "Zabbix агент (активный)", работают ли они?
      Стандартные вещи, которые нужно проверить при настройке агентов в активном режиме:
      • убедиться, что имя хоста, используемое агентом, точно (с учётом регистра букв) совпадает с тем, как прописано для узла сети в веб-интерфейсе Zabbix ("техническое" имя, не "видимое). Смотреть параметр "Hostname" и лог-файл агента при старте.
      • убедиться в том, что в конфиг-файле агента в параметре "ServerActive=" прописана ссылка (IP-адрес либо DNS-имя) на сервер Zabbix (либо на Zabbix прокси, если этот узел сети мониторится через прокси).
      1) Вот как выглядят мои логи:

      Click image for larger version

Name:	image.png
Views:	75
Size:	92.3 KB
ID:	493272

      2) ServerActive выставлен верно. К сожалению, на данном узле отсутствуют другие элементы данных, использующие тип "Zabbix агент (активный).

      Comment

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

        #4
        Originally posted by GurzH
        1) Вот как выглядят мои логи:
        Ну вот же: агент считает, что он работает на хосте с именем "Zabbix server". Что вряд ли, поскольку, судя по формату пути к его конфиг-файлу, он работает на платформе Windows.

        Originally posted by GurzH
        2) ServerActive выставлен верно. К сожалению, на данном узле отсутствуют другие элементы данных, использующие тип "Zabbix агент (активный).
        Создайте в тестовых целях хотя бы один. Всё равно какой - например, с ключом agent.variant (если такого ещё нет) - будет возвращать единичку или двоечку в зависимости от варианта агента (традиционный либо Агент 2). Поставьте интервал опроса 1 минуту и добейтесь того, чтобы эта единичка/двоечка приходила на сервер и была видна в разделе "Последние данные". Потом можно будет этот элемент данных удалить и начать разбираться с логами.

        Да, и ещё одно замечание (хотя сейчас проблема не в этом) - в настройках элемента данных для сбора логов интервал опроса 30 секунд - это много. Если идёт активная запись в этот файл, то данные могут появляться с большой задержкой. Лучше поставить короткий интервал (от 1 до 5 секунд).

        (добавлено)
        Ещё замечание. Агент у вас версии 7.0.4. Надеюсь, что сервер тоже версии 7.0.х, не ниже? Там могут быть проблемы с совместимостью (более новый сервер работает со старыми агентами, но не наоборот).
        Last edited by Kos; 24-10-2024, 17:35.

        Comment

        • Alex_UUU
          Senior Member
          • Dec 2018
          • 541

          #5
          Вроде бы, если в агенте указать опцию ServerActive, как раз для активных агентов, то агент обращается к этому серверу за списком итемов и это пишет в лог.
          Т.е. если для данного хоста на сервере прописано имя отличное от "Zabbix server", то в логах будет запись, типа для хоста нет активных провеок.
          Судя по приведеному логу агент не ходит на сервер за списком.
          Ну и странный ключ. Второй параметр, вроде, шаблон. Если его нет, то агент либо использует .* тогда все логи будут сыпаться, либо ^$ тогда ничего и не придет.

          Comment

          • GurzH
            Junior Member
            • Oct 2024
            • 6

            #6
            Originally posted by Kos
            Ну вот же: агент считает, что он работает на хосте с именем "Zabbix server". Что вряд ли, поскольку, судя по формату пути к его конфиг-файлу, он работает на платформе Windows.


            Создайте в тестовых целях хотя бы один. Всё равно какой - например, с ключом agent.variant (если такого ещё нет) - будет возвращать единичку или двоечку в зависимости от варианта агента (традиционный либо Агент 2). Поставьте интервал опроса 1 минуту и добейтесь того, чтобы эта единичка/двоечка приходила на сервер и была видна в разделе "Последние данные". Потом можно будет этот элемент данных удалить и начать разбираться с логами.

            Да, и ещё одно замечание (хотя сейчас проблема не в этом) - в настройках элемента данных для сбора логов интервал опроса 30 секунд - это много. Если идёт активная запись в этот файл, то данные могут появляться с большой задержкой. Лучше поставить короткий интервал (от 1 до 5 секунд).

            (добавлено)
            Ещё замечание. Агент у вас версии 7.0.4. Надеюсь, что сервер тоже версии 7.0.х, не ниже? Там могут быть проблемы с совместимостью (более новый сервер работает со старыми агентами, но не наоборот).

            Вы были правы, был указан неверный hostname, спасибо за замечание. Данные передаются, но, к сожалению русские символы передаются со знаком вопроса, как исправить? Буду очень признателен за помощь.

            Comment

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

              #7
              Про «вопросы вместо буковок» - посмотрите в документации по типу элемента данных log - там третий параметр как раз кодировка.
              скорее всего вам подойдет
              Code:
              "windows-1251"

              Comment

              • olexxiiy
                Junior Member
                • Apr 2023
                • 9

                #8
                Ключ должен выглядеть примерно так:
                Code:
                log[C:\Terminal\Logs\get-log-file.log,error,,,skip]
                Last edited by olexxiiy; 25-10-2024, 10:49.

                Comment

                • GurzH
                  Junior Member
                  • Oct 2024
                  • 6

                  #9
                  Originally posted by Hamardaban
                  Про «вопросы вместо буковок» - посмотрите в документации по типу элемента данных log - там третий параметр как раз кодировка.
                  скорее всего вам подойдет
                  Code:
                  "windows-1251"
                  Благодарствую, помогло.

                  Comment

                  • GurzH
                    Junior Member
                    • Oct 2024
                    • 6

                    #10
                    И, последняя просьба о помощи, господа. Не могли бы вы мне, пожалуйста, помочь правильно прописать триггер на вывод информации из этого лог файла. Пытался сделать через функции nodata и count, но, к сожалению, безуспешно. Мне нужно чтоб триггер просто выводил информацию, когда появятся данные в логе.

                    Comment

                    • Alex_UUU
                      Senior Member
                      • Dec 2018
                      • 541

                      #11
                      Originally posted by GurzH
                      И, последняя просьба о помощи, господа. Не могли бы вы мне, пожалуйста, помочь правильно прописать триггер на вывод информации из этого лог файла. Пытался сделать через функции nodata и count, но, к сожалению, безуспешно. Мне нужно чтоб триггер просто выводил информацию, когда появятся данные в логе.
                      А смысл, чтобы выводил?​​​​​
                      Типа пошли запросы раз в секунду и каждую секунду аларм-аларм-аларм?

                      Триггер простой если logrt. то он выкидывает или 0 или количество. триггер last()>0 и вариации с гистерезисом.
                      Если log, то ласт() всегда отдаст последнее значение, а оно всегда есть. Значит на закрытие можно поставить ноудата(1h) закроется через час, откроется, когда придут новые значения.

                      Comment

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

                        #12
                        А тогда зачем вообще лог тянуть на сервер? Может лучше считать его хэш и тригерить на его изменение?

                        Comment

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

                          #13
                          Originally posted by GurzH
                          Не могли бы вы мне, пожалуйста, помочь правильно прописать триггер на вывод информации из этого лог файла. Пытался сделать через функции nodata и count, но, к сожалению, безуспешно. Мне нужно чтоб триггер просто выводил информацию, когда появятся данные в логе.
                          1) триггер сам по себе ничего не выводит. Триггер - это набор условий, при которых генерируется событие "Проблема", реакция на это событие (например, отсылка оповещений) настраивается в действиях (Actions). Триггер имеет два основных состояния - "Problem" (когда условие выполнено, триггер сработал, событие "Проблема" сгенерировано) и "OK" (если перешёл в него из состояния "Problem" - генерируется событие "Восстановление"). Чтобы что-то настроить, нужно чётко определиться, какие именно условия вы хотите отслеживать: в каких случаях триггеру нужно генерировать событие "Проблема" и по какому критерию закрываться (переходить обратно в состояние "OK").

                          2) "Я делал, не получилось", - для тех, кто хотел бы Вам помочь, неинформативно. Примерно настолько же информативно, как ожидаемый ответ: "А я делал, у меня получилось".
                          Опишите, что вы делали, какого результата при этом ожидали и что получили реально - тогда можно будет ответить что-то более полезное. Ну и версию сервера Zabbix, всё же, не мешало бы указать.
                          Last edited by Kos; 28-10-2024, 12:26. Reason: опечатки

                          Comment

                          • Alex_UUU
                            Senior Member
                            • Dec 2018
                            • 541

                            #14
                            Originally posted by Hamardaban
                            А тогда зачем вообще лог тянуть на сервер? Может лучше считать его хэш и тригерить на его изменение?
                            Если лог огромный, считать хеш имхо, не есть правильно.. Тогда уж размер. Изменился - аларм.
                            У меня другая задача была. В логах (до 7 000 строк в секунду), надо было не просто кол-во строк считать, а выбирать значение из строки и уже его обрабатывать.
                            Посчитал, что даже это тянуть в заббикс не есть хорошо. ПРишлось написать своего демон, который в ондайне полкчает строки, прогоняте по регекспу, вытаскивает нужное, обраюатывает и по запросу выдает уже ограгированное значение.
                            А в заббиксе сделал только дискаверинт на этот ответ.
                            Получилось красиво :-)

                            Comment

                            Working...