Has anyone successfully created a report on nodes discovered but not imported or added to the ignore list? I'd love to know how to do this. Have experimented with various SWIS queries, but can't seem to find the "DateFound" parameter anywhere.
Here you go:
SELECT d.IPAddress AS "DISCOVERED IP ADDRESS", d.SysName AS "DISCOVERED DEVICE"FROM DiscoveredNodes dJOIN Nodes n ON d.IPAddress=n.IP_AddressWHERE n.IP_Address is NULLAND d.IgnoredNodeID IS NULL
You can use that to make a Custom SQL report in either the legacy Report Writer or the new Web-based.
Basic Function:
Look at all of your discovered nodes that are not in the ignored list. Compare that data against all the current nodes that are already in SolarWinds. If the IP_Address field in the Nodes table is NULL, then the node has not been imported yet.
If you have multiple discovery profiles running, you can further edit/enhance this report by finding the ProfileID from the DiscoveryProfiles table and then adding a statement at the end of your report (this can be helpful if you are trying to report on regions/teams/etc that have their own discoveries running)
SELECT ProfileID, Name, DescriptionFROM DiscoveryProfiles
AND d.ProfileID = 'INSERT # HERE'
ZackM
www.loop1systems.com
If I may interject, I am interested in a similar report. Do you know of a way to show IP addresses that DID NOT respond during a discovery?
I think I saw your thread about that earlier this week. I have been thinking about it and I don't think it can be done native to SolarWinds. The problem is that I cannot see anywhere where the list of IP addresses to be tested resides in the database. (not saying it doesn't exist, just that I haven't seen it in the limited time I took to look)
The only idea I have for this would be to export the results from the above query to a text file and then run a comparison against the original list and the results list and pipe out the deltas. This could probably be done with powershell.
if you drill into DiscoveryProfiles.PluginConfigurations you will find the address space (subnets / range / addresses) encoded in xml. I have no idea how to take it apart in SQL but have had good success using PHP and PowerShell.
Thanks Zack, and apologies for the late response (don't seem to be receiving thwack notifications atm). This seems to do the trick!
Hello,
I answered similar question before:
Look at here:
Re: Need a report of non-responding IPs during Discovery
Thanks for the initial post @stefanIT! That saved me a lot of time! This is my modification recommendation. This shows the same devices listed under "Found" in Scheduled Discovery Results.
SELECT *
FROM
DiscoveredNetObjectStatuses dnos
JOIN
DiscoveredNodes dn on dn.profileid = dnos.profileid
and dn.nodeid = dnos.DiscoveredObjectID
WHERE
ManagedNetObjectID is null and IgnoredNodeID is null
-OR-
ImportStatus != 33 and IgnoredNodeID is null
ImportStatus 33 seems to be that there is a ManagedNetObjectID.
Here was my first attempt which was a modification off the initial post. Just in case this process helps anyone else looking for a similar report.
SELECT
n.IPAddress,
nn.IP_Address,
d.IPAddress AS "DISCOVERED IP ADDRESS",
d.SysName AS "DISCOVERED DEVICE",
d.Hostname AS "DISCOVERED HOSTNAME",
d.DNS AS "DISCOVERED DNS",
d.MachineType,
d.SysDescription
DiscoveredNodes d
LEFT JOIN
NodeIPAddresses n ON d.IPAddress=n.IPAddress
Nodes nn ON d.IPAddress=nn.IP_Address
d.IgnoredNodeID IS NULL and n.IPAddress is NULL and nn.IP_Address is NULL and d.IPAddress not like '%.0'