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

#4786
Quote from: QWEasd on February 11, 2013, 10:34:25 AM
тема не раскрыта
как(и где) заводить учетки админов,пользователей и т.д. с параметрами email + номер телефона?
как привязать рассылку оповещений на события по конкретному хосту конкретному пользователю?

Как все происходит в Centreon
1. создаю notification с именем "host-notify-by-SMS" которое выполняет команду /usr/bin/ssh -l nagios 10.10.10.10 ' gammu-smsd-inject TEXT $CONTACTPAGER$ -text "Alert $HOSTNAME$ is $HOSTSTATE$ $DATE$ $TIME$ " '
2. завожу учетку у которой есть поля содержащие в том числе поле к которому можно обратиться по переменной $CONTACTPAGER$ + в "Host Notification Commands" для создаваемой учетки задаю команду созданную в п.1.
3. завожу хост, у хоста есть "Linked Contacts" в котором указываю учетки из п.2.  Задаю событиия хоста Down,Unreachable,Recowery,Flapping для генерации уведомлений на них.

Все! СМСки полетели нужным людям в зависимости от IP адреса. как такую связку реализовать в netxms?

PS
По всей видимости для понимания вопроса - нужно почитать доку на nagios,centreon.

Вообщем-то в NetXMS  все более-менее похоже. Единственный недостаток - нет связи между телефонами, мейлами, и т.д. и пользовательскими аккаунтами. Мы это довольно давно уже собираемся сделать, но пока нет... Примерно последовательность действий в NetXMS выглядит так:

1. Создаем action'ы для отсылки SMS, по одному на номер.
2. В event processing policy создаем правила, когда кому отсылать SMS. В условиях может быть список хостов, или конетйнер, или субнет, коды событий, уровень серьезности событий. В качестве действий выставляем нужные action'ы для рассылки SMS нужным людям.

Ну и да, есть много вариантов с использованием скриптов, внутренних или внешних. Но пожалуй конфигурация в любом случае будет немного сложнее чем описанная выше для Nagios'a.

Мне нравится идея с linked contacts, надо будет сделать что-то подобное в NetXMS'e.
#4787
No, you don't need Wine. Please tell me what Linux distribution you are using. Also, check what Java runtime is installed. Launcher is not supposed to crash if JVM is missing, but check it anyway.

Best regards,
Victor
#4788
General Support / Re: Install web interface on Debian
February 11, 2013, 02:10:23 PM
Hi!

In 1.2.5, web interface is completely different. nxhttpd is no longer used, and you don't need it. You can just delete it - it's a leftover from 1.1.6. For 1.2.5 web interface, you should install Jetty or Tomcat and deploy web UI war file, as described here: http://wiki.netxms.org/wiki/Web_Interface_Installation_Guide.

Best regards,
Victor
#4789
Скорее всего тайм-зона на его машине неправильная. Сервер присылает время событий всегда в UTC, и клиент уже переводит в локальное время в соответствии с настройками рабочей станции.
#4790
What Linux distribution and what NetXMS console version you are using?

Best regards,
Victor
#4791
Общие вопросы / Re: external parameter
February 11, 2013, 12:21:41 PM
Еще скорее всего в nxagentd.conf надо поставить ExecTimeout побольше, по умолчанию там 2000 миллисекунд.
#4792
General Support / Re: (Active) Discovery stuck
February 10, 2013, 05:53:57 PM
You can use custom filtering script instead of basic filters. Filtering script takes object of class NewNode (http://wiki.netxms.org/wiki/NXSL:NewNode) as first argument and should return TRUE to accept new node or FALSE to reject it. More information about scripting you can find in our wiki: http://wiki.netxms.org/wiki/Scripting_Guide. Looks like it's not possible to check sysName of new node, only sysObjectId. I'll add more properties, it's easy.

Best regards,
Victor
#4793
General Support / Re: (Active) Discovery stuck
February 10, 2013, 05:19:05 PM
This debug output a bit misleading. AcceptNewNode is a function which checks every potential node to be accepted for adding to NetXMS or not. Message "range check result is 0" means that node didn't pass IP range checking. And I just found a bug in discovery code - if IP range is not specified in the filter, but filter is set (like in your case for SNMP supported nodes, but not for being in specific address range), all nodes are discarded. I'll fix that in release 1.2.6. As a workaround, you can check filter by address range option, and add subnet 0.0.0.0 with mask 0.0.0.0 as address filter, which will effectively allow IP addresses.

Best regards,
Victor
#4794
General Support / Re: (Active) Discovery stuck
February 10, 2013, 04:12:58 PM
How do you run netxmsd? It uses ICMP pinf for active discovery, so it must be run as root to be able to open raw socket for sending ICMP packets, and ICMP pings must be allowed on firewalls if there are any in between NetXMS server and subnets you are discovering.
Also, you can try to run netxmsd with debug level 5 or higher (using -D command line option) and check it's log for details and possible errors.

Best regards,
Victor
#4795
General Support / Re: Out of memory NetXMS v1.2.5
February 10, 2013, 12:29:39 PM
Hi!

Yes, you should run step 2 after step 1 is completed. You can use Alex's script for step 2 too.

Best regards,
Victor
#4796
General Support / Re: Out of memory NetXMS v1.2.5
February 09, 2013, 10:27:08 PM
Hi!

We are still trying to figure out what could cause such a high memory consumption. Can you please do the following:

1. Run netxmsd under valgrind with additional options:

valgrind --leak-check=full --undef-value-errors=no --show-reachable=yes --log-file=netxmsd-valgrind.log netxmsd -D3


(or modify script sent by Alex by adding --show-reachable=yes to valgrind's command line).

2. Run valgrind's heap profiller:


valgrind --tool=massif --time-unit=ms --stacks=yes --threshold=0.5 --max-snapshots=1000 --log-file=netxmsd-massif.log netxmsd -D3


and send me profiler's result (it will be named massif.out.<pid>).

Also, can you please show me you configuration hook script and transformation scripts?

Best regards,
Victor
#4797
General Support / Re: Out of memory NetXMS v1.2.5
February 07, 2013, 07:31:33 PM
Hi!

Quote from: millerpaint on February 07, 2013, 06:33:43 PM
One thing seems strange, it crashes with out of memory right away running under valgrind.  If I run netxmsd normally, it can run for hours before crashing.

This is normal, when running under valgrind program takes tens times more memory then when it run normally. Valgrind allocates extra memory around each dynamically allocated block to detect boundary violations, etc.

Best regards,
Victor
#4798
Надо создать через консоль обьект "mobile device" (в любом контейнере под "Infrastructure Services"), в поле "Device ID" вписать 353966050600936. По device ID сервер определяет, к какому именно обьекту относится подключившийся агент.
#4799
General Support / Re: Can't upgrade from version 1.1.6
February 07, 2013, 02:30:26 PM
Hi!

Yes, you specify top-level directory in --prefix, like usr. Make process will add bin, lib, etc. as needed.

Database schema version may or may not change between releases - it depends on actual requirement for changing it. Looking at change log, it seems that 1.1.7 was a minor release, mostly with bug fixes, so database schema was not changed.

Best regards,
Victor
#4800
Странно. Написал вот такой тестовый скрипт:


C:\Source\NetXMS\x64\debug>cat test13.nxsl
if ($1 == null)
        $1 = 1.234567;

println "floor(" . $1 . ") = " . floor($1);
println "ceil(" . $1 . ") = " . ceil($1);
println "round(" . $1 . ") = " . round($1);
println "round(" . $1 . ", 2) = " . round($1, 2);


Результаты:



C:\Source\NetXMS\x64\debug>nxscript test13.nxsl
NetXMS Scripting Host  Version 1.2.6
Copyright (c) 2005-2012 Victor Kirhenshtein

floor(1.234567) = 1.000000
ceil(1.234567) = 2.000000
round(1.234567) = 1.000000
round(1.234567, 2) = 1.230000

C:\Source\NetXMS\x64\debug>nxscript test13.nxsl 2.378
NetXMS Scripting Host  Version 1.2.6
Copyright (c) 2005-2012 Victor Kirhenshtein

floor(2.378) = 2.000000
ceil(2.378) = 3.000000
round(2.378) = 2.000000
round(2.378, 2) = 2.380000

C:\Source\NetXMS\x64\debug>nxscript test13.nxsl 2.98
NetXMS Scripting Host  Version 1.2.6
Copyright (c) 2005-2012 Victor Kirhenshtein

floor(2.98) = 2.000000
ceil(2.98) = 3.000000
round(2.98) = 3.000000
round(2.98, 2) = 2.980000

C:\Source\NetXMS\x64\debug>


Т.е. round(x, 2) работает как описано. По поводу 0 в конце: после floor/ceil/round, тип данных у результата остается float - поэтомы и цифры после запятой. Это правильно, если число будет использоваться в дальнейших вычислениях. Для красивого форматирования числа можно использовать функцию format (http://wiki.netxms.org/wiki/NXSL:format), отдельно или как обертку вокруг ceil/floor/round.

Пример использования format:


C:\Source\NetXMS\x64\debug>cat test14.nxsl
if ($1 == null)
        $1 = 1.234567;

println "format(" . $1 . ", 1, 2) = " . format($1, 1, 2);
println "format(floor(" . $1 . "), 1, 0) = " . format(floor($1), 1, 0);

C:\Source\NetXMS\x64\debug>


Результаты:


C:\Source\NetXMS\x64\debug>nxscript test14.nxsl
NetXMS Scripting Host  Version 1.2.6
Copyright (c) 2005-2012 Victor Kirhenshtein

format(1.234567, 1, 2) = 1.23
format(floor(1.234567), 1, 0) = 1

C:\Source\NetXMS\x64\debug>nxscript test14.nxsl 17.5672334
NetXMS Scripting Host  Version 1.2.6
Copyright (c) 2005-2012 Victor Kirhenshtein

format(17.5672334, 1, 2) = 17.57
format(floor(17.5672334), 1, 0) = 17

C:\Source\NetXMS\x64\debug>