Ad Widget

Collapse

Анализ данных из лог файла и построение графика

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • undroid
    Junior Member
    • Aug 2018
    • 8

    #1

    Анализ данных из лог файла и построение графика

    Приветствую!

    Появилась необходимость мониторить уровень GSM сигнала в GSM шлюзах OpenVox.

    Имеются лог файлы:
    openvox_1921681201_1_1.log
    openvox_1921681201_1_2.log
    openvox_1921681201_1_3.log
    и т.д. всего до 20 файлов

    1921681201 - ip адрес шлюза, последние две цифры через нижнее подчеркивание это номер слота и номер порта (пример: _1_3 = слот 1 порт 3)

    с содержимым:
    1533474823,2018-08-05,16:13:43,28.0
    1533474841,2018-08-05,16:14:01,26.0
    1533474851,2018-08-05,16:14:11,27.0
    1533475011,2018-08-05,16:16:51,28.0
    1533475020,2018-08-05,16:17:00,27.0

    Последние значения - это уровень GSM сигнала (пример: 28.0)

    Так же могу слить все лог файлы в один и проставить ip адрес, номер слота и порта в строку, получится такой формат:

    1533467075,2018-08-05,14:04:35,192.168.1.201,2,4,16.0

    Я создал элемент данных с типом "лог файл" (скриншот 1), добавил пред. обработку (скриншот 2), данные успешно пришли (скриншот 3) и "местное время" спарсилось правильно. Однако когда я добавил зависимый элемент данных с типом "число с плавающей точкой" (скриншот 5), то данные в нем отображаются как за одно время (скриншот 4). И график соответственно не строится нормально.

    Вопрос. Как правильно настроить получение данных из файла, чтобы график строился по всем полученным данным?
    Можно конечно сделать через UserParametr, однако в таком случае теряется большое количество промежуточных данных, да и сама настройка думаю будет сложной.
  • Semiadmin
    Senior Member
    • Oct 2014
    • 1625

    #2
    По-моему, вполне себе идея для ZBXNEXT - дать возможность класть в БД записи логов с timestamp, полученным из local time, раз уж Zabbix умеет это local time парсить.

    Comment

    • undroid
      Junior Member
      • Aug 2018
      • 8

      #3
      а в текущей версии - 3.4, есть возможность как-то решить эту проблему?) или нужно кардинально менять подход?
      просто я не могу запрашивать поштучно данные о gsm сигнале, можно конечно, но это расточительно. эти данные уже опрашивает сама система, т.е. было бы удобно парсить именно логи. а парсить пачку логов каждую секунду, так себе занятие.
      может есть какие-то идеи?)

      Comment

      • Semiadmin
        Senior Member
        • Oct 2014
        • 1625

        #4
        Разве что написать свой собственный парсер логов. Например, читать раз в полминуты кусок лога, преобразовывать в формат <hostname> <key> <timestamp> <value> и кидать в Zabbix при помощи zabbix_sender -T -i. В качестве timestamp использовать переведенное в unixtime время из лога.

        Comment

        • undroid
          Junior Member
          • Aug 2018
          • 8

          #5
          Понял, буду думать, так тоже не очень удобно. Спасибо за ответы!

          Comment

          Working...