Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Victor Kirhenshtein

#7531
Общие вопросы / Re: alarm DCI
December 21, 2007, 12:09:52 PM
Раз речь идет об STDERR, то значит у нас есть некая внешняя программа, которая что-то выводит туда. Соответственно основной вопрос - как этот вывод получить и превратить в event. Кроме скрипта с nxevent внутри я пока вариантов не вижу.

P.S. Кстати перенаправление будет с STDERR не на STDOUT, а на STDIN другого процесса.
#7532
Общие вопросы / Re: alarm DCI
December 21, 2007, 11:45:00 AM
Если его сначала получить из STDERR каким-то образом. Как вариант - сделать скрипт в который перенаправлять STDERR, а скрипт уже полученную информацию через nxevent может отсылать на сервер (в параметрах события). Ну а в event processing policy обрабатываем событие как обычно и при создании аларма используем макросы %1 .. %99.
#7533
Это сделать можно, но придется делать отдельный condition на каждый принтер... :( Когда сделаю вычисляемые DCI, тогда такие вещи можно будет нормально делать через шаблоны.
#7534
И первый и второй вопрос - только в исходниках, увы :)

С уважением,
Виктор
#7535
Conditions используются в тех случаях, когда надо создать комплексные условия на основе значений нескольких DCI, возможно с разных узлов. Например, я хочу посылать событие в случае если на хосте А заканчивается место на диске и одновременно на хосте В перегружен CPU. Тогда я делаю condition, указываю что он будет использовать соотв. DCI с хостов А и В, и пишу скрипт для проверки истинности условия - например


($1 < 10) && ($2 > 80)


(если первым в data я поставил дисковое пространство, а вторым CPU usage).
При переходе условия из FALSE в TRUE посылается event, который обрабатывается как любой другой.
#7536
Не реализовано - но мысль интересная. Я подумаю над возможностью реализации.

С уважением,
Виктор
#7537
Чтобы заработал nxget, добавь 127.0.0.1 в MasterServers.
#7538
Но их же 10!!! Как это лучше отображать?
#7539
Hello!

System.ServiceState can return the following codes:

0 - service running;
1 - service paused;
2 - service starting (start pending);
3 - service pausing (pause pending);
4 - service starting after pause (continue pending);
5 - service stopping (stop pending);
6 - service stopped;
255 - unable to get current service state.

Hope this helps!

Best regards,
Victor
#7540
После принудительного configuration poll тоже не появилось? Что говорит

nxget -l freebsd_host_address Agent.SupportedParameters

и

nxget -l freebsd_host_address Agent.SubagentList

?
#7541
Да, это все верно. Я просто спрашиваю, как это должно выглядеть. Например, есть шаблон, он наложен на 10 нодов. Я в шаблоне выбираю Graph для DCI. Что я должен увидеть на экране?
#7542
Производных DCI пока нет, но скоро будут. Что касается скриптов - можно запускать Perl script на сервере, который через nxsnmpget берет данные с узла. В NetXMS эти данные можно забирать вызывая скрипт как ExternalParameter в агенте на сервере, или прямо в скрипте использовать nxpush. Но это все конечно не очень удобно.
#7543
У шаблона своих данных нет - данные есть у каждой ноды на которую назначен шаблон. Данные надо показывать сразу для всех узлов, или выбирать какой-то один, или еще как-то?
#7544
Quote from: weec on December 12, 2007, 10:35:14 AM
разобрался
теперь такой вопрос
с помошью telnet я могу законнектиться на определенный порт удаленного хоста
ввести запрос 'getinfo' и получить ответ 'myhttpd ver 3.44' в 3 строки
как мне сделать такую проверку с помошью netxms, загнав в поле 'response' 3 строчки?

пока нельзя - для этого был задуман тип сервиса "telnet", но его надо исправить чтобы он работал как надо.
#7545
Quote from: weec on December 12, 2007, 10:35:14 AM
как собирать данные по пингам с netxms-сервера (платформа FreeBSD) до управляемых свитчей (исключая вариант использования сторонних скриптов)

Использовать PING субагент (см. https://www.netxms.org/documentation/ping_subagent.shtml).

Для применра, если надо мониторить response time до хоста 10.0.0.1, в конфиг агента добавляем:


*PING
Target = 10.0.0.1:my_host


и делаем DCI Icmp.AvgPingTime(my_host) или Icmp.LastPingTime(my_host).
В версии 0.2.20 появится (в CVS уже есть) также параметр Icmp.PacketLoss(my_host).