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

#631
Hi,

it does, but very limited. You can configure cluster object and register virtual IPs - NetXMS will then monitor if virtual IP address is moved from one node to another and if it is present. It cannot monitor resources without associated virtual IPs.

Best regards,
Victor
#632
Hi,

are you running server on Windows?

Best regards,
Victor
#633
General Support / Re: Alarm Browser Scroll
March 16, 2021, 11:46:17 PM
You can actually try upgrade to 3.8 - we did change framework version 3.7, so that may help. And 3.2 is quite old anyway, lot of other fixes and improvements were made since its release.

Best regards,
Victor
#634
Hi,

you can use any database present on that server then, probably "master" could be a good choice as it always exists.

Best regards,
Victor
#635
It is considered down, but status for the interface is set to "Minor" instead of "Critical" if operational state is DORMANT and expected state is UP. If expected state is DOWN and interface is in DORMANT state, then status will be "Normal" because interface is down in a sense that it does not pass operational packets. I don't think there should be expected state DORMANT (as far as I understand it it is more of an exception state that expected to be solved, so it is kind of pointless to expect interface to be in that state normally).

Best regards,
Victor
#636
Announcements / NetXMS 3.8 version 3.8.226
March 15, 2021, 10:32:24 PM
Hi all!

New patch release for NetXMS 3.8 (version 3.8.226) is just published. Changed since previous release:

- Lower memory footprint of NXSL scripts
- Correct handling of agent policies by external subagents
- Added attribute "tunnel" to NXSL class "Node"
- Server runs configuration poll on node after agent upgrade
- File manager subagent does not register same root multiple times
- Fixed refresh issues in Object Details view
- Fixed visualization issues in switch port view
- Fixed incorrect root object filtering in dashboard elements "Event Monitor", "SNMP Trap Monitor", and "Syslog Monitor"
- Fixed issues:
        NX-2014 (Create NXSL property on node object that gives reference to each type of proxy)
        NX-2024 (Add "Max Wait Time" to Server.EventProcessors Internal Parameter Table)

Best regards,
Victor
#637
Hi,

you could choose OID right before doing actual SNMP request in script DCI - so no extra SNMP requests will be done. Like this:

switch($node->vendor)
{
   case "Mikrotik":
      switch($node->productName)
      {
         case "60ghz": oid = ".1.3.6.1.4.1.14988.1.1.1.8.1.6.1";
      }
      break;
   case "Ubiquity":
      switch($node->productName)
      {
         case "AirMAX": oid = ".1.3.6.1.4.1.41112.1.4.1.1.4.1";
         case "AirFiber": oid = ".1.3.6.1.4.1.41112.1.3.1.1.5.1";
      }
      break;
}

if (oid == null)
   return null;  // OID was not selected, null will mark DCI as unsupported

snmp = $node->createSNMPTransport();
if (snmp == null)
   abort;
return SNMPGetValue(snmp, oid);


This of course relies on correctly set vendor and product name values. This should be the case for Mikrotik devices, but may not be for Ubiquity - you should double check.

Alternative approach could be probing for different OIDs in configuration poll hook andd setting correct OID as node's custom attribute, and then use it in script DCI. For example:

HOOK::ConfigurationPoll:

oids = %( ".1.3.6.1.4.1.41112.1.4.1.1.4.1", ".1.3.6.1.4.1.41112.1.3.1.1.5.1", ".1.3.6.1.4.1.14988.1.1.1.8.1.6.1" );
snmp = $node->createSNMPTransport();
if (snmp != null)
{
   for(oid : oids)
   {
      if (SNMPGetValue(snmp, oid) != null)  // You may use more sophisticated checks here if needed
      {
          selectedOID = oid;
          break;
      }
   }
}
SetCustomAttribute($node, "WirelessCenterFrequencyOID", selectedOID);


and script DCI:

oid = GetCustomAttribute($node, "WirelessCenterFrequencyOID");
if (oid == null)
   return null;  // No OID selected, mark as unsupported
snmp = $node->createSNMPTransport();
if (snmp == null)
   abort;
return SNMPGetValue(snmp, oid);


Best regards,
Victor
#638
Общие вопросы / Q&A session
March 11, 2021, 12:40:53 PM
Наша сессия вопросов и ответов с разработчиками начнется сегодня в 14:00 EET. Для желающих подключиться и поучаствовать ссылка на конференцию:
https://radensolutions.my.webex.com/radensolutions.my/j.php?MTID=mdecc400a75a40ac65079cafccbc4e259
#639
General Support / Re: Alarm Browser Scroll
March 10, 2021, 08:37:48 PM
It could be limitation of framework we are using that cause scrolling reset on each refresh. But somebody from the team will check.

Best regards,
Victor
#640
Hi,

does Mikrotik switch support LLDP (that should allow NetXMS server to find connection between ProCurve and Mikrotik). DOes NetXMS server see correct FDB on Mikrotik switch? You can check that by right-click on it, and select Topology -> Forwarding database.
What is output f manual topology poll for both ProCurve and Mikrotik?

Best regards,
Victor
#641
Hi,

you should pass IP address of the node you are pinging to ping command. Try

ping %a

as command (%a will be expanded to primary IP address of the node where you start object tool).

Best regards,
Victor
#642
I see two options here:

1. Use regular expression for DCI matching in summary table to match all possible OID options. This will work only for summary tables though.

2. Create script DCI that will request correct OID depending on device type. For example:


oid = ".1.3.6.1.2.1.1.1.0";
snmp = $node->createSNMPTransport();
if (snmp == null)
   abort;
return SNMPGetValue(snmp, oid);


You can replace direct OID assignment in first line with actual logic for selecting correct OID.

Best regards,
Victor
#643
Your syntax is wrong - you should use -> operator for accessing object properties (dot is string concatenation). Also, brackets denote capture group in regular expression, you should escape them with backslashes.


return $node->productName ~= "ePMP3000 \\(FCC\\)";


should work.

Best regards,
Victor
#644
General / Re: Error while building the console
March 08, 2021, 11:08:34 AM
Hello!

We have updated repository with forked Zest version and it seems to break build of older versions. To fix it you should hard set versions of Zest plugins in product file. The following patch should fix it:

diff --git a/src/java/netxms-eclipse/Product/nxmc.product b/src/java/netxms-eclipse/Product/nxmc.product
index 2cdd05dee0..79a110983b 100644
--- a/src/java/netxms-eclipse/Product/nxmc.product
+++ b/src/java/netxms-eclipse/Product/nxmc.product
@@ -597,9 +597,9 @@ Copyright (c) 2003-2020 Raden Solutions
       <plugin id="org.eclipse.ui.workbench.texteditor.nl_pt_BR" fragment="true"/>
       <plugin id="org.eclipse.ui.workbench.texteditor.nl_ru" fragment="true"/>
       <plugin id="org.mozilla.javascript"/>
-      <plugin id="org.netxms.gef4.zest.core"/>
-      <plugin id="org.netxms.gef4.zest.jface"/>
-      <plugin id="org.netxms.gef4.zest.layouts"/>
+      <plugin id="org.netxms.gef4.zest.core" version="2.0.6"/>
+      <plugin id="org.netxms.gef4.zest.jface" version="2.0.6"/>
+      <plugin id="org.netxms.gef4.zest.layouts" version="2.0.6"/>
       <plugin id="org.netxms.ui.base"/>
       <plugin id="org.netxms.ui.eclipse.actionmanager"/>
       <plugin id="org.netxms.ui.eclipse.agentmanager"/>


Best regards,
Victor
#645
What if you run full configuration poll on it manually? Also, do this node respond to ping or it is only accessible via SNMP?

Best regards,
Victor