News:

We really need your input in this questionnaire

Main Menu
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

#766
General Support / Re: Table DCI parameters
October 16, 2014, 01:16:22 AM
Hello.

NETXMS_SUBAGENT_TABLE is defined in include/nms_agent.h: http://git.netxms.org/public/netxms.git/blob/develop:/include/nms_agent.h?js=1#l406

Table example:

Filling up structure: http://git.netxms.org/public/netxms.git/blob/develop:/src/agent/subagents/aix/main.cpp?js=1#l266
Callback implementation: http://git.netxms.org/public/netxms.git/blob/develop:/src/agent/subagents/aix/disk.cpp?js=1#l108

Small tip: you can use "nxget" tool for debugging, it connects directly to the agent and query parameter / table (just make sure your IP is in Servers/MasterServers). To query for table, use "-T" switch: nxget -T 10.5.0.111 FileSystem.Volumes
#767
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 . ")";
#768
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.
#769
Общие вопросы / 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
#770
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
#771
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%"
#772
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).
#773
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
#775
У нас есть свой nexus, в ближайшее время я его чуть причешу и открою публичный доступ.
#776
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.
#777
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?
#779
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"
#780
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