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 - Alex Kirhenshtein

#841
General Support / Re: Translation Rule
October 10, 2014, 12:50:18 AM
You can make use transformation script on DCI to do that. Sample script:
if ($1 == 0) { return "OK"; }
if ($1 == 1) { return "STATUS_1"; }
if ($1 == 2) { return "STATUS_2"; }
return "UNKNOWN (" . $1 . ")";
#842
General Support / Re: 2 agents on the same node
September 30, 2014, 10:58:16 PM
You can use "External subagent" feature - basically it allows you to run multiple instances of the agent (with separate configuration files) on the same server and multiplex all communications thru "master" agent.

Example: you have "master" agent, which run as root and responsible for communications and system-wide data and actions (e.g. remote reboot). Also you have agent for "app1", which should be run as "user1" and agent for "app2", which should be run as "user2".

To configure that, crate configurations files like this:

nxagentd.master.conf:MasterServers = ...
LogFile = ...

ExternalSubagent=APP1
ExternalSubagent=APP2


nxagentd.app1.conf:LogFile = ...
ExternalMasterAgent=APP1

# any additional configuration, subagents, etc.


nxagentd.app2.conf:LogFile = ...
ExternalMasterAgent=APP2

# any additional configuration, subagents, etc.



Then start them all:

# nxagentd -c nxagentd.master.conf -d
# su user1 -c "nxagentd -c nxagentd.app1.conf -d"
# su user2 -c "nxagentd -c nxagentd.app2.conf -d"



How it works:

Master agent create communication pipe for each ExternalSubagent entry, "external subagents" connect to this pipe. When request from the network is processed by "master" agent, it proxy requests thru these pipes and send reply back.
#843
Общие вопросы / Re: SNMP OID unsupported item
September 29, 2014, 04:18:22 PM
Вы используете неправильный OID – должна быть еще двойка в конце (как видно в результате walk-а): .1.3.6.1.4.1.14988.1.1.1.3.1.6.2
#844
General Support / Re: Object Tools Config in a Mac
September 25, 2014, 07:43:50 PM
I did a few tests on the Mac, and it seems that simplest ways to do it is this:echo ssh %OBJECT_IP_ADDR% > /tmp/nxcon.command; chmod +x /tmp/nxcon.command; open /tmp/nxcon.command
#845
General Support / Re: Object Tools Config in a Mac
September 21, 2014, 08:45:29 PM
Hello.

It's slightly more complicated on Mac. Most of the times it's done like this "open -a RequiredTool.app --args %OBJECT_IP_ADDR%", however in some cases you'll need to write support scripts using applescript.

RDP:
Official client from Microsoft (Remote Desktop Connection.app) support single command line parameter – file name of the profile. Probably you can make a script, which generates profile based on %OBJECT_IP_ADDR% and then launch RDC.
CoRD, on the other hand works quite well with command line and handle "rdp://" protocol as well. For CoRD you can use this command line in tool configuration: "open rdp://%OBJECT_IP_ADDR%"

SSH, Telnet:
If you use standard command line ssh and telnet: "open -a Terminal --new --args ssh %OBJECT_IP_ADDR%" and "open -a Terminal --new --args telnet %OBJECT_IP_ADDR%"
For any 3rd party clients, you need to check respective documentation.

HTTP, etc: "open http://%OBJECT_IP_ADDR%"
#846
General Support / Re: segfault netxmsd crash
September 06, 2014, 10:54:57 PM
You can upload it to our anonymous ftp at ftp://netxms.org/upload/. This FTP is upload-only and support encrypted TLS sessions (optional, you'll need compatible ftp client like FileZilla).
#847
General Support / Re: segfault netxmsd crash
September 05, 2014, 05:45:57 PM
Hello.

Could you please also provide us with disassembly of two methods: AlarmManager::watchdogThread and AlarmManager::newAlarm?

This can be done with gdb:$ gdb /opt/netxms/bin/netxmsd
(gdb) info functions AlarmManager::watchdogThread
(gdb) disassemble AlarmManager::watchdogThread
(gdb) disassemble AlarmManager::newAlarm
#849
У нас есть свой nexus, в ближайшее время я его чуть причешу и открою публичный доступ.
#850
General Support / Re: Network Discovery options
August 29, 2014, 08:00:20 PM
Hello.

"Disable" will turn discovery off completely.

Active/passive modes:

Passive: information about new nodes are extracted from ARP and routing tables on all nodes available in NetXMS. This way you need to add at least one "seed" node (most of the time server itself is this node, and it's sufficient).
Active: same as passive, but server will scan all addresses in in configured subnets / ranges, as set in "Active discovery targets" section.

In both cases, resulting addresses can be outside of desired range (e.g. multiple interfaces on the router) and you need to filter them.
You can use either custom script (which should just return true/false) or in your case – use automatically generated script. In "Filter" section select "Automatically generate script with following rules", then check "Accept node if it is within given range or subnet" and then add all desired subnets/ranges in "Address Filters" section.

I need to check, but I think that if server was started with discovery disabled, it will be reenabled only on next server restart, so save discovery settings and restart netxmsd.
#851
General Support / Re: segfault netxmsd crash
August 28, 2014, 04:54:05 PM
Hello.

Yes, we spent some time on it, but unfortunately can't find root of this problem. Can you please run server under valgrind, until crash?
#853
Second issue will be also fixed in 1.2.17.

You can also change column by executing query "alter table user_groups modify description null"
#854
General Support / Re: New reporting functionality
August 18, 2014, 08:27:05 PM
Hello.

For historical reasons (however I'll change that in a future), all password except quartz's, should be encrypted by nxencpasswd:AirAlk:~() $ nxencpasswd netxms netxms1
H02kxYckADXCpgp+8SvHuMKmCn7xK8e4wqYKfvErx7g=


Sample config (login=netxms, password=netxms1):
system.datasource.username = netxms
system.datasource.password = H02kxYckADXCpgp+8SvHuMKmCn7xK8e4wqYKfvErx7g=
report.datasource.username = netxms
report.datasource.password = H02kxYckADXCpgp+8SvHuMKmCn7xK8e4wqYKfvErx7g=
org.quartz.dataSource.myDS.user = netxms
org.quartz.dataSource.myDS.password = netxms1
#855
Thank you for contributing, awesome work.

I did a quick check, and it seems that you missed couple of functions:

FindAllDCIs
GetDCIValues
_exit (instead of "exit")

There is also "nxinstall" command line tool, which provide couple more functions. I don't think that anyone except us use this tool, but here is list, just for the reference:

CopyFile
DeleteFile
RenameFile
access
chdir
fclose
feof
fgets
fopen
fputs
mkdir
rmdir
system