Ad Widget

Collapse

ODBC, mariaDb мониторинг значений в базе данных.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • SuperSlon
    Junior Member
    • Oct 2019
    • 4

    #1

    ODBC, mariaDb мониторинг значений в базе данных.

    Здравствуйте коллеги.
    Задачу мне подкинули следующую. Есть БД (TEST) на сервере (debian), zabbix-server 4.4.
    Необходимо из таблицы (test_1) делать выборку по двум колонкам (NAME) и (enquire_link) и перенести эти данные в забикс сервер для дальнейшего анализа и создания тригеров на тот случай если линк пропадает.
    Как это сделать ума не приложу, но очень нужно. Посоветуйте что читать и где копать. Может у кого была подобная задача.
  • Kocunop
    Junior Member
    • Oct 2019
    • 11

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

    В агенте добавляешь UserParameter=checkSQL,c:\windows\ZABBIX\check_sql .bat В скрипте запрос к БД. Но есть одно но, у меня это адекватно не заработало, хотя должно: https://www.zabbix.com/forum/in-russ...B5%D1%80%D0%B4

    Сейчас пробую сделать выборку на питоне. Как заработает отпишу.

    Comment

    • Kocunop
      Junior Member
      • Oct 2019
      • 11

      #3
      Со скриптом на питоне все ОК.

      Получилось что-то вроде этого:

      UserParameter=TEST, python "path-to-python.py"

      Сам питон:

      import psycopg2

      conn = psycopg2.connect(...)
      cursor = conn.cursor()
      cursor.execute("select valid_to from ...")
      r = cursor.fetchone()
      print(r)

      Дальше создается элемент данных на ключ TEST

      Comment

      • SuperSlon
        Junior Member
        • Oct 2019
        • 4

        #4
        Вот как у меня на данный момент получается. Вернее не получается. Я создал Элемент данных и спомощью SQL запроса определю какое он имеет значение у меня их только два 1 или 0.
        при тесте все этот элемент кричит все прекрасно работает но данных так и нет.


        Click image for larger version

Name:	Zabbix ffs.jpg
Views:	468
Size:	104.6 KB
ID:	387952

        Click image for larger version

Name:	Zabbix ffs2.jpg
Views:	436
Size:	189.7 KB
ID:	387953

        Что делаю не так?
        Attached Files

        Comment

        • Kocunop
          Junior Member
          • Oct 2019
          • 11

          #5
          Если делать через тип элемнта "Монитор баз данных", то все немног опо другому.
          1. Проверь установлен ли ODBC
          2. Корректно ли составлен ini к нему
          3. Проверить работает ли соединение ODBC корректно (isql)

          В доке все пошагово описано https://www.zabbix.com/documentation...es/odbc_checks
          Last edited by Kocunop; 15-10-2019, 15:10.

          Comment

          • SuperSlon
            Junior Member
            • Oct 2019
            • 4

            #6
            Да это все работает корректно. Все шаги пройдены, все настроено.
            isql -i Выдает все отлично. но прочему не работает запрос? Ну как, он отправляется когда нажимаешь тест. но данные не выдаются.

            Comment

            • Kocunop
              Junior Member
              • Oct 2019
              • 11

              #7
              zabbix_get -s host_ip -k 'db.odbc.select[...]'

              Получает значения?

              Comment

              • SuperSlon
                Junior Member
                • Oct 2019
                • 4

                #8
                Спасибо за подсказку не может установить соединение по этому IP_port. Разберусь напишу что да как.

                Comment

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

                  #9
                  Originally posted by Kocunop
                  zabbix_get -s host_ip -k 'db.odbc.select[...]'

                  Получает значения?
                  Боюсь, что это неверный путь.
                  Утилита zabbix_get обращается к агенту Zabbix - она удобна, чтобы проверить, "понимает" ли агент Zabbix какую-то метрику (например, добавленную через UserParameter) и есть ли с ним связь.
                  Метрика же db.odbc.select[...] должна иметь тип "Database Monitor" и обрабатывается Zabbix-сервером.

                  Обращаться zabbix_get-ом к агенту бесполезно: он не знает метрики db.odbc.select. А обращаться к SQL-серверу - тем более бесполезно: он не понимает протокола общения Zabbix-агента с сервером (по которому к нему "обращается" zabbix_get).

                  SuperSlon, напишите лучше ещё раз: что именно у Вас получается, а что - нет. Я, например, не понимаю, где вы нажимаете кнопку "Test", по которой отправляется запрос, "но данные не выдаются".

                  Comment

                  Working...