NetXMS Support Forum

Russian Support => Общие вопросы => Topic started by: moredrive on October 18, 2016, 04:10:28 PM

Title: Параметры из программы в dashboard-s
Post by: moredrive on October 18, 2016, 04:10:28 PM
Привет всем!
У меня следующая задача(проблема): есть программа на C++, на выходе которой есть параметры, которые представлены в виде json или xml файла. Примерно в таком виде:
{
IP1: {param1, param2, ..., paramN}
IP2: {param1, param2, ..., paramN}
...
IPN: {param1, param2, ..., paramN}
}

Параметры подсчитываются программой, и меняются со временем. Время изменения параметров плавающее.
Задача: для каждого IP нарисовать график, где будут отображена динамика изменения параметров param1, param2 и т.д.

Пожалуйста, поделитесь советом как это сделать в NetXMS. Писать свой субагент? Или это можно сделать как-то через db-query?
Title: Re: Параметры из программы в dashboard-s
Post by: kozlov_ao on October 18, 2016, 04:20:02 PM
Возможно, поможет вот это: https://www.netxms.org/documentation/adminguide/agent-management.html#externalparametersprovider
Но придется изменить выхлоп программы.

QuoteИли это можно сделать как-то через db-query
Если данные лежат в БД, то да, можно и через него...
Title: Re: Параметры из программы в dashboard-s
Post by: moredrive on October 18, 2016, 04:40:44 PM
Да, данные в программе хранятся в Sqlite БД.
Для своей задачи не нашел как это можно сделать через db-query. Мне бы простой пример как из БД выбрать параметр и показать его динамику изменения по времени на графике.
Title: Re: Параметры из программы в dashboard-s
Post by: moredrive on October 18, 2016, 11:19:01 PM
Please, help me!!!
Title: Re: Параметры из программы в dashboard-s
Post by: kozlov_ao on October 18, 2016, 11:55:08 PM
в SQLLite не силен.. Показываю на MySQL:
1. Конфигурим агент:
Quote*DBQUERY
Database = id=db_mon;driver=mysql.ddr;server=127.0.0.1;dbname=information_schema;login=root;password=
Query = ConcurentConnections:db_mon:60:SELECT CEIL(100/(SELECT `VARIABLE_VALUE` from `GLOBAL_VARIABLES` WHERE `VARIABLE_NAME`='MAX_CONNECTIONS')*(SELECT `VARIABLE_VALUE` FROM `GLOBAL_STATUS` WHERE `VARIABLE_NAME`='Threads_connected')) as `result`
2. Настраиваем DCI (скрины прицеплены)
3. Смотрим график... (result.png)

Значения параметров в настройках запроса смотрим тут: https://www.netxms.org/documentation/adminguide/application-monitoring.html?highlight=database