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 - tuomar

#1
General Support / Re: Integration with LDAP question
November 03, 2014, 05:17:01 PM
Hi,

Quote[14-Oct-2014 15:37:40.350] [DEBUG] LDAPConnection::initLDAP(): Connecting to LDAP server
[14-Oct-2014 15:37:40.851] [DEBUG] LDAPConnection::syncUsers(): LDAP could not get search results. Error code: Size limit exceeded

Here is other thread: https://www.netxms.org/forum/configuration/ldap-config-exceed-size-limit-ms-active-directory/
Win2003/2008 AD have default value of MaxPageSize = 1000.

Rgs
TM
#2
Hi,

I'm not using NetXMS with ldap, but i think that you need check your servers (AD) MaxPageSize parameter.
Win2003/2008 MaxPageSize default value is 1000.

QuoteMaxPageSize value controls the maximum number of objects that are returned in a single search result, independent of how large each returned object is. To perform a search where the result might exceed this number of objects, the client must specify the paged search control. This is to group the returned results in groups that are no larger than the MaxPageSize value. To summarize, MaxPageSize controls the number of objects that are returned in a single search result.

Windows 2000 and Windows Server 2003 LDAP administration limits
http://support2.microsoft.com/kb/315071

Windows Server 2008 and newer domain controller returns only 5000 values in a LDAP response
http://support2.microsoft.com/kb/2009267

LDAP policies
http://technet.microsoft.com/en-us/library/cc770976.aspx

Rgs
TM


#3
Hi,

Thanks for the step by step instructions
This was my first (or second) time than i added the patch to source.

make command gave the following error:

node.cpp: In member function 'UINT32 Node::getItemFromSNMP(WORD, const char*, size_t, char*, int)':
node.cpp:3188: warning: format '%llu' expects type 'long long unsigned int', but argument 4 has type 'long unsigned int'
node.cpp:3188: warning: format '%llu' expects type 'long long unsigned int', but argument 4 has type 'long unsigned int'
node.cpp: In member function 'void Node::topologyPoll(ClientSession*, UINT32, int)':
node.cpp:5331: error: 'm_name' was not declared in this scope
node.cpp:5331: error: 'm_id' was not declared in this scope


I tried to read the source code and find right variable names. File netxms-1.2.17/src/server/core/node.cpp and row 5331
Orginal
DbgPrintf(6, _T("Node::topologyPoll(%s [%d]): peer node set but node object does not exist"), m_name, m_id);

Modified
DbgPrintf(6, _T("Node::topologyPoll(%s [%d]): peer node set but node object does not exist"), m_szName, m_dwId);


I'm not sure whether those correctly, but after change make command does not give any error.

...and yes, database is backed up before this code is executed ;)

Rgs
TM
#4
Hi,

Thank you for fast reply.

I tried install new version (latest snapshot) from git source, but make stopped with error.
This is my first time when i try use git, so maybe i miss something.


make[3]: Leaving directory `/usr/local/src/netxms-git/src/libnxmap'
Making all in libnxsl
make[3]: Entering directory `/usr/local/src/netxms-git/src/libnxsl'
bison -b parser -o parser.tab.cpp -d -t -v parser.y
parser.y:106.32-39: syntax error, unexpected type, expecting string or identifier
make[3]: *** [parser.tab.cpp] Error 1
make[3]: Leaving directory `/usr/local/src/netxms-git/src/libnxsl'
make[2]: *** [all-recursive] Error 1


gcc version is 4.3.4, bison version is 2.3 and flex version is 2.5.35.

At last i tried modify 1.2.17 source code (add patch), but i only break it  :-[

Rgs
TM
#5
Hi,

We are getting segfaults on the netxmsd after upgrading from 1.2.16 to 1.2.17.
Crash occurs about 20 minutes after the start of the service.

Server is SLES 11 SP3 with kernel 3.0.101-0.40-default x86_64 and all patches installed.


Oct 27 09:01:01 kernel: [25988161.002060] netxmsd[10021]: segfault at 3e4 ip 00007f30b08c4985 sp 00007f309baf9d80 error 4 in libnxcore.so.1.0.0[7f30b0810000+13b000]
Oct 27 09:22:15 kernel: [25989435.606785] netxmsd[10678]: segfault at 3e4 ip 00007fafd01c4985 sp 00007fafbf0afd80 error 4 in libnxcore.so.1.0.0[7fafd0110000+13b000]
Oct 27 09:42:40 kernel: [25990660.489147] netxmsd[11255]: segfault at 3e4 ip 00007f40a695c985 sp 00007f4095ad9d80 error 4 in libnxcore.so.1.0.0[7f40a68a8000+13b000]


With debugger (gdb) i get this kind of output:


Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f9488359700 (LWP 5152)]
Node::topologyPoll (this=0x7f94908f40e0, pSession=0x0, dwRqId=0, nPoller=62) at node.cpp:5329
5329                if (peerNode->isDown())

(gdb) bt
#0  Node::topologyPoll (this=0x7f94908f40e0, pSession=0x0, dwRqId=0, nPoller=62) at node.cpp:5329
#1  0x00007f9499b07d67 in TopologyPoller (arg=0x3e) at poll.cpp:586
#2  0x00007f9497e8f806 in start_thread () from /lib64/libpthread.so.0
#3  0x00007f94970a3e8d in clone () from /lib64/libc.so.6
#4  0x0000000000000000 in ?? ()


I think that libc version is 2.11.3

Rgs
TM
#6
Hi,

Sorry, that was my mistake.
Parameter what i need to get is description (http://wiki.netxms.org/wiki/NXSL:DCI).

I created a dummy dci (parameter: Dummy, Origin: Internal, Data Type: string) and here are my simple test scripts:

sub main()
{
dciName = $dci->name;
return dciName;
}

When i click test button it shows error, but when script is "running on the server" the last value tab (and history) shows dummy.

sub main()
{
dciName = $dci->description;
return dciName;
}

When i click test button it shows error, but when script is "running on the server" the last value tab (and history) shows dci description.

sub main()
{
nodeName = $node->name;
return nodeName;
}

When i click test button it shows node name.

Many thanks for your quick reply.


Here is a long story and full script ...and sorry my bad english :)

I try build dashbord that shows network statistic (eg. uplinks traffic (bytes/sec), port usage (%), router cpu usage, jne.) or network "heatmap". Users that can see this dashboard does not need see any other data on the devices.

First at all i created "readonly" user that only have rights to the one dashboard, but then i get errors that user does not have nesessary rights to read the dci data. So next i give read right to Device container and now dashboard works ok, but user see too much data on devices (and can do snmp walk).
I didn't found any option to give rights to only read dci data, so now i try create dummy object that have nesessary dcis.

I hope that there is is a another way to do this kind of dashboard, so any tips/ideas are more than wellcome  :D

This is script and now it works, but if i click test button i get error.

sub main()
{
//Custom attribute "source_node"
value_sourceNode = GetCustomAttribute($node, "source_node");

//DCI description, it will need to be same as dci what we want read
dciDescription = $dci->description;

value_SourceObject = FindNodeObject($node, value_sourceNode);
value_DCIid = FindDCIByDescription(value_SourceObject, dciDescription);
value_DCIdata = GetDCIValue(value_SourceObject, value_DCIid);
return value_DCIdata;
}


Rgs
TM
#7
Hi,

I try use (or get) current dci name on the transformation script, but i get error message:
Error 14 in line 8: Function or operation argument is not an object

Script line:
dciName = $dci->name;

My Netxms version is 1.2.14

Rgs
TM

#8
Hi,

I upgraded my NetXMS server form 1.2.9 to 1.2.11.

Now whenever i start the NetXMS console i get the following error message (in a popup after logon):
   'load MIB file on startup' has encountered a problem cannot load MIB file from server: Bad MIB file data

There is same topic but not really answer:
https://www.netxms.org/forum/installation/%27load-mib-file-on-startup%27-has-encountered-an-problem-(1-1-10)/

I tried recreate netxms.mib but it does not solve my problem.

When i check netxms-source/contrib/mibs directory there was txt files and some other files:
-rw-r--r-- 1 root root  24K Jan 20 08:21 Makefile
-rw-r--r-- 1 root root 9.9K Dec 25 17:01 Makefile.am
-rw-r--r-- 1 root root  24K Jan 15 01:53 Makefile.in

My first question is: are these files obsolute?

I did these steps and error is now gone, but are all really ok..??

stop netxms server
rm /usr/local/share/netxms/mibs/*
cp /tmp/netxms/netxms-1.2.11/contrib/mibs/*.txt  /usr/local/share/netxms/mibs/.
cd /usr/local/share/netxms/mibs/
nxmibc -d .
start netxms server

Rgs
tm