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

#691
Hi,

you can change format string for them. It is basically Java format string with one addition - format %*s will scale value automatically and display it as k, M, G, etc. So for traffic counters you can use format string

%*sbps

It will produce something like 1.37 Mbps for original value like 1370024.

Best regards,
Victor
#692
Preferably you should use


not $node->isPrinter

or

!$node->isPrinter


although your form will work too, because isPrinter will contain boolean value TRUE or FALSE, and if it is false then isPrinter != TRUE will produce expected result.

Best regards,
Victor
#693
So it is deleted as duplicate:

2021.01.11 07:59:49.527 *D* [event.proc         ] EVENT SYS_DUPLICATE_NODE_DELETED [100] at {0} (ID:30074352 F:0x0001 S:1 TAGS:"") FROM NetXMS Server: Duplicate node Haas HP DL380 Gen9 (iLO) is deleted (Primary IP address 10.59.204.205 of node Haas VMWareHostB [118318] found on interface HP Ethernet 1Gb 4-port 331T Adapter of node Haas HP DL380 Gen9 (iLO) [135819])

What is node "Haas VMWareHostB" and do it really have same IP address?

Best regards,
Victor
#694
It is not possible to configure server to use only SNMP sysName for resolving node name. However, you can synchronize node name with SNMP sysName by adding the following code to configuration poll hook script:


if (($node != null) && $node->isSNMP && ($node->name != $node->snmpSysName))
{
$node->rename($node->snmpSysName);
}


It will update node name according to SNMP sysName on each configuration poll.

Best regards,
Victor
#695
Hi,

you can add new image to image library and then assign this image to your objects (can also do that automatically in configuration poll hook script based on node OID for example).

Yes, you can add interface traffic data - right click on any link on the map, go to "Data collection" settings, and add whatever DCIs you want to be displayed.

Best regards,
Victor
#696
Hi,

UseDNSNameForDiscoveredNodes controls assignment of primary host name (DNS name or address used for communications), not node name (the one you see in object tree, etc.). Resolving node names from IP address is controlled by Objects.Nodes.ResolveNames.

Best regards,
Victor
#697
Hi,

this is caused by introduction of boolean type in NXSL. If you change

if ($node->isRouter == 1)

to

if ($node->isRouter)

it will work correctly. As those attributes are boolean by nature and all our examples use only second form we didn't expect that they are used with == operator (and == 1 was unreliable anyway because it could have happen to be any non-zero number).

Best regards,
Victor

#698
Try to turn debug to level 6 (be aware that it will generate lot of output if you setup is big), and after node disappear again filter all messages containing name or ID of that node and post them.

Best regards,
Victor
#699
Hi,

could you please provide enable debug level 6 for tag client.* on server, and provide server log after next disconnect along with client application log?

Best regards,
Victor
#700
Hi,

does it disappear after server restart or while server is running? If former then it could be that because of SQL errors node is not saved to DB at all. If latter then it could be due to deduplication if it is turned on (you can check it in server configuration - parameter NetworkDiscovery.MergeDuplicateNodes).

Best regards,
Victor
#701
Hi,

discovery via agent behind tunnel should work if you are using zones, and node with agent is set as proxy for remote zone.

Best regards,
Victor
#702
Announcements / NetXMS 3.7 version 3.7.116
January 08, 2021, 04:56:51 PM
Hello all!

We just published patch release 3.7.116 for version 3.7. Changes since previous release:

- New methods "appendAll" and "insertAll" in NXSL arrays
- DCI transformation test can be run from template data collection configuration
- Fixed bug in remote agent configuration update
- Fixed bug in object selection dialog in UI
- Fixed server hang on shutdown if initiated from remote GUI session
- Fixed issues NX-1875 (Error message is not cleared in list of notification channels)

Best regards,
Victor
#703
General Support / Re: New version memory issue
January 07, 2021, 06:25:07 PM
Hi,

I see that database writer queue is quite high (5721598 in log file you've sent). Try to monitor it for some time (you can use internal DCIs on server node or debug console command "show queues"). If it is constantly growing it may indicate database performance issue and can cause excessive memory consumption (because more and more data kept in memory).

Best regards,
Victor
#704
General Support / Re: New version memory issue
January 07, 2021, 01:21:49 PM
Hi,

definitely looks like memory leak. What was previous version that didn't have this issue? What are you monitoring, are you using scripts, proxies?
If possible please run diagnostic collection script nx-collect-server-diag.cmd and provide created zip file.

Best regards,
Victor
#705
General Support / Re: Using Macros in a Log Parser
January 06, 2021, 10:48:34 AM
Quote from: bquiggle on January 05, 2021, 06:26:09 PM
I currently have the parser and actions setup to monitor the logs for a specific string, and if it finds it, it emails me the line from the log containing the string. If the string occurs twice in immediate succession, it will send me two separate emails. Is there a good way to group event notification emails when the event occurs multiple times in quick succession?

You can do that with scripts in event processing policy. When event is processed, update some key in persistent storage with current timestamp, and add additional script filter which will compare that key to current timestamp, and only allow further event processing if previous event is far enough in the past. See screenshot for example (it will send notification for SNMP_EGP_NEIGHBOUR_LOSS only if it comes more than 10 minutes after previous alert).

Quote from: bquiggle on January 05, 2021, 06:26:09 PM
How would I set up the parser to trigger an event if the log hasn't been written to after a set amount of time? Is this possible?

Using parser it can be done only in very complex way - you can match each line and generate event, setting timestamp from taht event, and have scheduled task or DCI to check how old that timestamp is.
Alternatively you can use DCI to read file log file modification time and check how old it is (assuming that modification time updated after write which may not always be the case if application keeps log file open).

Best regards,
Victor