This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Node added with JSON Doesn't poll correctly

I'm asking this for my developer, so I don't have all the programmesse language, but when we add a node through JSON and I think Python it automatically reports as up, even though it is not up. The Next Poll time goes into the past and no matter how many times I rediscover or Poll now it doesn't update correctly. I know I can fix this by going to edit node, changing to status only and then back to SNMP, but I'm thinking there is something in the code that is putting this in wrong to start with.

Here is what I was provided from my developer:

During a create what we do is (with example filled in values):

POST to /Create/Orion.Nodes with JSON:

{ EntityType = Orion.Nodes, IPAddress = 1.1.1.1, IPAddressGUID = 01010101-0000-0000-0000-000000000000, Caption = Test Node, DynamicIP = False, EngineID = 1, Status = 1, UnManaged = False, Allow64BitCounters = True, SysObjectID = , MachineType = , VendorIcon = , ObjectSubType = SNMP, SNMPVersion = 1, Community = TestCommString, RediscoveryInterval = 30, PollInterval = 120, StatCollection = 10 }

Any suggestions on what could be going wrong with this or other ways to try and fix this issue?

  • 1. Login into solarwinds primary poller and then login into DBManager and connect to your SolarWinds DB.

    2. Check for a table called Nodes.

    3. Compare the field values between the node added from SolarWinds Web GUI with the node added by your JSON Script, there could be an issue with the values that you are passing (could be a simple parsing issue like spaces or blanks or etc) in your JSON Script or you could be missing some mandatory or required parameter value thats required for it to function accurately.

    Hope it helps.

  • I compared a node that I had added using our portal and one that I manually added by clicking "Add Node" and really didn't see much of a difference. Since the portal added node isn't truly up the SNMP fields are not populated. I did note that the NextPoll is not refreshing, but looks like NextDiscovery and LastSync do appear to have an updated timestamp.

    This is an intriguing road to follow though, is there any other table playing a role that could be altered differently. Anyone have any ideas? I'm also curious about native pollers by looking at the sample: orionsdk-python/add_node.py at master · solarwinds/orionsdk-python · GitHub

    pollers_enabled = {
       'N.Status.ICMP.Native': True,
       'N.Status.SNMP.Native': False,
       'N.ResponseTime.ICMP.Native': True,
       'N.ResponseTime.SNMP.Native': False,
       'N.Details.SNMP.Generic': True,
       'N.Uptime.SNMP.Generic': True,
       'N.Cpu.SNMP.HrProcessorLoad': True,
       'N.Memory.SNMP.NetSnmpReal': True,
       'N.AssetInventory.Snmp.Generic': True,
       'N.Topology_Layer3.SNMP.ipNetToMedia': False,
       'N.Routing.SNMP.Ipv4CidrRoutingTable': False

    If somehow the native ICMP were affected then it would mean no up messages. I know our code was developed before this sample and before upgrading SW to 12.1, so maybe a parameter changed we are not aware of or are using.

  • I'm adding on to this because I did go find another table. With the help of this post: Python Orion SDK - Q: HowTo discover new device into NPM BUT disabling some standard pollers  I went to the Pollers table in the db and compared the portal and manual added nodes... low and behold only two pollers are actually assigned to the portal added one!

    My programmer is making some changes and we are going to test in dev. We are trying to add in the N.Status.ICMP.Native and N.ResponseTime.ICMP.Native. Totally makes sense what is happening now. (at least I really hope)

  • This was totally it, when we added those other two native pollers everything came up correct, the node was down and the polling time updated correctly. I'm wondering now if this bit of the code to add a node ever worked or if at some point in upgrades Solarwinds changed how they were doing native pollers, but yay for victories!