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

#556
Announcements / NetXMS 3.8 version 3.8.366
May 19, 2021, 11:10:57 PM
Hi all!

We just published new patch release for version 3.8 - 3.8.366. Changes since previous patch release:

- Improved handling of partial or incorrect information in LLDP MIB (fixes topology building issues with Mikrotik devices)
- Fixed bug in discovering agent only nodes in remote zones
- Fixed interface object synchronization for physical links widget
- Fixed log name save for "Windows event log parser"
- Removed repeat count options from "Windows event log parser" and "Syslog parser"
- Added severity filter in Windows Event Log synchronization subagent
- Added event and alaorm on agent tunnel connection problems
- Fixed issues:
        NX-658 (Write poller statistics to debug log)
        NX-673 (Perfomance Tab - missing "Stacked" and "Translucent")
        NX-1510 (Special handling for user initiated agent restart to avoid node down or agent unreachable events)
        NX-1589 (Error in database initialization on MS SQL 2017)
        NX-1682 (SYS_SCRIPT_ERROR event is not happening when instance discovery filter script or transformation script has no closing bracket)
        NX-1705 (DNS Lookup on Status Poll Change)
        NX-1783 (When upgrading, agent installer asks for server IP, but does not update it in nxagentd.conf)
        NX-1952 (Update IP address on interface to address resolved by DNS for nodes without agent)
        NX-2040 (Periodically check if files used in file delivery policies are available on the server)
        NX-2041 (Filter by Object ID (in Object Browser's filter) should match exact ID, not substring)
        NX-2042 (Display EPP rule that created alarm in alarm log and alarm browser)
        NX-2051 (Allow storing SYS_DB_QUERY_FAILED events to event log)
        NX-2055 (Execution of some commands as agent actions may fail on Windows)
        NX-2057 (Add filtering by alarm status (acknowledged, resolved) in Alarm Viewer dashboard element)

Best regards,
Victor
#557
Эксперементировал с 3.8 - ни разу не смог повторить. Единственно когда можно поймать такую ситуацию - если скрипт завершается с ошибкой - тогда интерфейс проходит фильтр. Но тут скрипт вроде как с ошибкой завершаться не должен. Еще возможный вариант - если интерфейсы видны по SNMP с теми-же индексами, но другими именами, которые пропускает фильтр.
#558
Hi,

just added severity filter option to wineventsync subagent. Now for every reader you can specify SeverityFilter parameter, which is either bit mask  or severity level names separated by commas. Below are level names and their values:

Critical = 0x100
Error = 0x001
Warning = 0x002
Information = 0x004
AuditSuccess = 0x008
AuditFailure = 0x010

To accept only warning and error events:

SeverityFilter = 0x012

or

SeverityFilter = Warning,Error


This change will be included into next patch release.

Best regards,
Victor
#559
Hi,

object queries are for a bit different purpose. They are for selecting objects. Script in query is executed for each node and should return true or false. You can include additional fields into resulting table, but number of columns will be static.

One possible solution for your task is to create script table DCI on one of the nodes (could be NetXMS server itself) that will collect data from other nodes and populate the table. Then you can put content of that table on dashboard. You can choose "do not store" option for that table DCI to avoid keeping unnecessary information in database. Script for such DCI could be following:


result = new Table();
result->addColumn("sysName", DCI::STRING, "System Name", true);
result->addColumn("description", DCI::STRING, "Description", true);
result->addColumn("value", DCI::FLOAT, "Value");

for (node : GetAllNodes())
{
   for(dci : FindAllDCIs(node, null, "*latency*"))
   {
      value = GetDCIValue(node, dci->id);
      if (value != null)
      {
         row = result->addRow();
         result->set(row, 0, node->snmpSysName);
         result->set(row, 1, dci->description);
         result->set(row, 2, value);
      }
   }
}

return result;


Best regards,
Victor
#560
It looks like file is actually transferred, but sender just don't wait enough for final confirmation, which is probably take more time due to target system load. I have increased wait time for confirmation on file upload, hopefully it will help. Change will be included into next patch release.

Best regards,
Victor
#561
General Support / Re: Time Based Event Processing
May 17, 2021, 04:11:30 PM
Hi,

yes, this can be done with filtering script. You can get "time" object with gmtime or localtime functions and then check it's properties. To match events only between 00:00 and 08:00 you can use the following script:


t = localtime($event->timestamp);
return t->hour >= 0 and t->hour < 8;


This will not include 8:00, if you need it you should add additional condition that checks for 8:00 exact time.

Best regards,
Victor
#562
Yes, from now on we will put lightweight tags on each release. We will also experiment with GitHub releases, will see how it will work.

Regarding maintenance and documentation - we are ok to include Docker based installation into installation guide. Do you mind moving source files for Docker deployment into separate repository under netxms project on GitHub?

Best regards,
Victor
#563
Hello!

You can turn on TLS in driver by adding

DBDrvParams = enforceTLS=true

to netxmsd.conf. User authentication with X.509 certificates is not supported.

Best regards,
Victor
#564
We decide that we do official packaging when planned features and fixes are ready. As third number in version is generated automatically from git commits it cannot be predicted. i think that lightweight tags is a way to go, we will just put lightweight tag whenever we do deb publishing. We can agree on certain format for those tags so you will be able to distinguish between deb releases and other tags.

Best regards,
Victor
#565
Feature Requests / Re: Netxms Event History Table
May 16, 2021, 08:28:30 PM
If acknowledged alarms will be removed from active alarm list how they would be different from terminated? Idea is that alarm browser shows you all problems that are not solved yet. If your business process requires only two states, you can simply terminate alarms instead of acknowledging them.

Best regards,
Victor
#566
Hi,

please use this link for upload: https://cloud.radensolutions.com/s/88sd5KwD2SaAewE

Best regards,
Victor
#567
Hello,

I think we can use lightweight tags for marking release versions. Also, you can use this simple script to switch to specific X.Y.Z version within source tree: https://github.com/netxms/netxms/blob/master/tools/switch_to_version.sh

Best regards,
Victor
#568
It should be on NetXMS server.

Best regards,
Victor
#569
Then it's likely bug in agent. Try to read multiple values directly from agent with nxget:

nxget -i 1 node_ip 'Net.Interface.BytesIn64(1)'
nxget -i 1 node_ip 'Net.Interface.BytesIn(1)'

and check if output looks valid or not (replace node_ip with actual IP address).

Best regards,
Victor
#570
Hi,

you can access all alarms via "Entire Network" or "Infrastructure Services" objects. FOr example, the following script will print all alarm messages:

for(a : FindObject(1)->alarms)
{
println a->message;
}


Best regards,
Victor