Комплексный опрос

Started by Anth0ny, July 07, 2008, 05:54:26 PM

Previous topic - Next topic

Anth0ny

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

Возник следующий вопрос: предположим, что нужно мониторить состояние не одного, отдельно взятого сервиса или показателя производительности, а их совокупность. И состояние системы тоже определяется совокупностью состояний сервисов и показателей производительности.

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

Какой из текущих инструментов, входящих в NetXMS позволяет это сделать?

Какие самые общие рекомендации при реализации такого рода комплексного опроса?

Пример 1: определяем состояние и здоровье MS SQL сервера.

\SQLServer:Buffer Manager\Buffer cache hit ratio
(процент запросов на получение страницы, которые
выполняются без обращения к жесткому диску).

\SQLServer:Buffer Manager\Page reads/sec
(среднее число страниц в секунду, которое SQL-сервер
читает с дисковой системы).

\SQLServer:SQL Statistics\Batch Requests/sec
(среднее число пакетных запросов в секунду).

\SQLServer:SQL Statistics\SQL Re-Compilations/sec
(среднее число рекомпиляций в секунду).

\Process(sqlservr)\% Processor Time
(утилизация процессоров, создаваемая процессом SQL-сервер).

\Process(sqlagent)\% Processor Time
(утилизация процессоров, создаваемая процессом SQL-агент).

\SQLServer:Locks(_Total)\Average Wait Time (ms)
(среднее время ожидания выполнения запросов блокировки).

\SQLServer:Locks(_Total)\Lock Wait Time (ms)
(общее время ожидания выполнения запросов блокировки).

Пример 2: определяем состояние и здоровье MS DNS сервера.

\DNS\Database Node Memory;
(Память узлов в базе данных)

\DNS\Dynamic Update Queued;
(Поставлено в очередь динамических обновлений)

\DNS\Total Query Received/sec;
(Общее число полученных запросов/сек)

\DNS\Total Response Sent/sec;
(Отправлено всего ответов/сек)

\Process(dns)\% Processor Time;
(Процесс(dns)\% загруженности процессора)

\DNS\Recursive Query Failure/sec;
(Рекурсивных ошибок запросов/сек)

\DNS\Recursive TimeOut/sec;
(Рекурсивных таймаутов отправления/сек)

Victor Kirhenshtein

Вариантов два:

1. Создать дополнительный DCI, для которого написать transformation script, в котором текущие значения всех нужных параметров будут пересчитываться в некий комплексный индикатор, на который потом можно накладывать threshold'ы.

2. Сделать объект Condition, в котором определить требуемое комплексное условие. Это единственный вариант если в условии надо связать значения параметров с разных узлов.


Anth0ny

Виктор, спасибо!
Буду экспериментировать.

Off: очень ждём новую версию и новые функции, особенно работу с логами, которой к сожалению не предполагается в новой версии =).