For example in NMS web console:
1. Go Under Node Management.
2. Click List Resources to get a checklist of interfaces.
Can I have same operation from C#?
Regards
The API consists of a pair of verbs: Orion.NPM.Interfaces.DiscoverInterfacesOnNode and Orion.NPM.Interfaces.AddInterfacesOnNode. There's a sample script here: https://github.com/solarwinds/OrionSDK/blob/master/Samples/PowerShell/NPM.DiscoverAndAddInterfacesOnNode.ps1 .
There is an API for enumerating and adding network interfaces for SNMP nodes, but there is no equivalent for the rest of the List Resouces functionality.
When will this be available in the API for other polling methods? This should be standard for the SAM module especially when polling with WMI, a given for automating Windows server provisioning? It's not made it into SAM 6.2.4 or NPM 12
I don't have a date for you, but that's a feature request that is important to me.
This needs to be added ASAP! W use NetApp flexclones and dynamically present hundreds of disks to servers per day. I couldn't believe it when I found NPM could not detect these automatically.
Shocko thanks for your response. That would solve my case, can you please share the function name or a link.
Hi adelk, that my problem, i need a function API to do this
sorry i wrongly addressed that reply for you
That would solve my case, can you please share the function name or a link.
I followed your script and have it working for all interfaces except the following when you click list resources, how via code can these get selected
There are two methods in the API for adding nodes:
The advantage of #2 is that it works for any device type supported by Orion. With #1 you have to know the right PollerType values in advance (and they can be different even between older and newer models of the same device!).
If you want to continue with method #1, the best way to get the right set of poller types is to take an example of the kind of device you want to monitor (as close a match as you can get) and add it to Orion manually. Then query Orion.Pollers to see what got added for that device. Set up your script to mimic this.
But you might find it simpler overall to look at https://github.com/solarwinds/OrionSDK/wiki/Discovery and use that API instead.
I did mimic what is on another device like
$poller = @{
NetObject="N:"+$nodeProps["NodeID"];
NetObjectType="N";
NetObjectID=$nodeProps["NodeID"];
}
# Status
$poller["PollerType"]="N.Status.ICMP.Native";
$pollerUri = New-SwisObject $swis -EntityType "Orion.Pollers" -Properties $poller
$poller["PollerType"]="N.Status.SNMP.Native";
# Response
$poller["PollerType"]="N.ResponseTime.ICMP.Native";
$poller["PollerType"]="N.ResponseTime.SNMP.Native";
# Details
$poller["PollerType"]="N.Details.SNMP.Generic";
# UPTime
$poller["PollerType"]="N.Uptime.SNMP.Generic";
# CPU
$poller["PollerType"]="N.Cpu.SNMP.CiscoGen3";
# Memory
$poller["PollerType"]="N.Memory.SNMP.CiscoGen4";
# Topology
$poller["PollerType"]="N.Topology_Vlans.SNMP.VtpVlan";
$poller["PollerType"]="N.Topology_CDP.SNMP.cdpCacheTable";
$poller["PollerType"]="N.Topology_Layer3.SNMP.ipNetToMedia";
$poller["PollerType"]="N.Topology_Layer3_IpRouting.SNMP.ipCidrRouter";
# Routing
$poller["PollerType"]="N.VRFRouting.SNMP.MPLSVPNStandard";
$poller["PollerType"]="N.Routing.SNMP.Ipv4CidrRoutingTable";
$poller["PollerType"]="N.RoutingNeighbor.SNMP.BGP";
$poller["PollerType"]="N.RoutingNeighbor.SNMP.EIGRP";
But it still doesn't select the items in the screen shot.
Do you have a matrix of Interface Type Numbers to Descriptions?
The interface type numbers come from IANA. You can see them here: https://www.iana.org/assignments/ianaiftype-mib/ianaiftype-mib