Мониторинг баз данных с помощью HostTracker

Опубликовано: 2017-08-04 все статьи | Глоссарий | ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ

В данной статье мы бы хотели познакомить вас с еще одной интересной и полезной функцией нашего сервиса - Проверка баз данных (БД).

Существует много различных сервисов для сбора и анализа информации о работе ресурса, например, количестве посетителей, продолжительности сессий, распределении аудитории по регионам и т.п. Но при работе с данными возникает потребность в сравнении таких вот «технических» характеристик.

Именно для получения и оценки таких параметров, команда-разработчиков и аналитиков ХостТрекера разработала простой для понимания и использования инструмент - Проверка БД.

Настройка запроса

Как правило, настройка запроса не занимает много времени. С функцией Проверка БД можно каждый раз использовать разнообразные инструкции, легко при этом получая результаты выполнения  запросов к базе и соответствующим образом их обрабатывая. В случае, если инструкция не указана – система будет просто проверять возможность установить соединение с базой данных. Также инструмент позволяет указать максимальную задержку выполнения запроса и отследить результат выполнения.

В качестве инструкции можно использовать любые команды - от простых запросов типа Select до более сложных процедур. При этом запрос должен выполняться менее 30 секунд, в противном случае произойдет ошибка (timeout).

Обратите внимание! Во-первых, при создании запроса следует учитывать тот факт, что нужное нам значение должно возвращаться в первую строку первого столбца результирующего набора. Именно это значение будет далее анализироваться. Во-вторых, для запросов с использованием операторов манипулирования данными дополнительно будет считываться количество затронутых записей.

Далее приведена графическая интерпретация результата выполнения инструкции DELETE по конкретно выбранным параметрам:

Соответственно, каждый такой сценарий регистрируется, а последний - всегда доступен в таблице задач интерфейса. При этом, если результирующий набор данных- числовой - по нему будет построен график, с помощью которого можно проследить динамику изменений соответствующих метрик. На данном этапе также можно задавать условия отбора (равно /не равно; больше/меньше, чем; в пределах/за пределами).

В случае, если условие не будет выполняться - запрос не проходит проверку по таймауту или отсутствует соединение с БД - Вам будет выслано уведомление на телефон или сообщение в Skype, Viber, Telegram, Slack.

Пример создания проверки

Приведем полный пример, содержащий сценарий как для отслеживания размера файлов БД, так и для получения сообщений при достижении порогового значения.

  1. Формируем выборку, которая определяет объем свободного места в табличном пространстве:

          SELECT
          convert(DECIMAL(12,2),round(sysfile.size/128.000,2)) AS 'FileSize/mb'
          , convert(DECIMAL(12,2),round(fileproperty(sysfile.name,'SpaceUsed')/128.000,2))
          AS 'Used/mb'
          , convert(DECIMAL(12,2),round((sysfile.size-fileproperty(sysfile.name,'SpaceUsed'))/128.000,2))
          AS 'Free/mb'
          , filegroup.groupname AS 'File-group'
          , sysfile.[name],sysfile.[filename]
          FROM dbo.sysfiles sysfile (NOLOCK)
          inner join dbo.sysfilegroups filegroup (NOLOCK) ON filegroup.groupid =
          sysfile.groupid
          UNION ALL 
          SELECT
          convert(DECIMAL(12,2),round(sysfile.size/128.000,2)) AS 'FileSize/mb'
          , convert(DECIMAL(12,2),round(fileproperty(sysfile.name,'SpaceUsed')/128.000,2))
          AS 'Used/mb'
          , convert(DECIMAL(12,2),round((sysfile.size-fileproperty(sysfile.name,'SpaceUsed'))/128.000,2))
         AS 'Free/mb'
         , (CASE WHEN sysfile.groupid = 0 THEN 'Log' END) AS 'File-group'
         , sysfile.[name],sysfile.[filename]
         FROM dbo.sysfiles sysfile (NOLOCK) WHERE groupid = 0
         ORDER BY [File-group],sysfile.[name]            

     2.  Получаем следующий результат:

     3.  Определяем условия отбора:

            1.  Результат запроса – выбираем «значение в первой колонке первой строки».

            2.  Проверка результата – выбираем «меньше, чем» и как макс. значение указываем «1000».

Будет получен следующий результат: если лог-файл превысит 1 Гб, нам поступит сообщение.

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

Настройка мониторинга

Для того, чтобы сформировать новую Проверку БД необходимо:

  1. Заполнить следующие поля:

  • Сервер – укажите имя сервера;

  • Порт – укажите имя порта;

  • База данных – укажите имя базы;

  • Пользователь –укажите логин под которым необходимо будет выполнить запрос;

  • Пароль – укажите пароль, соответствующий вашему логину.

Для данного задания рекомендуется создать отдельного пользователя с ограниченными правами.

      2.  Обеспечить доступ к базе. Для этого, добавьте IP-адреса агентов HostTracker в белый список файрволла и вашего сервера.

Внимание! IP-адреса наших агентов - постоянны.

      3.  Когда будете готовы - нажмите Сохранить.

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

Тэги: guide