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.

Cisco WLC LWAP Inventory

UnDP's and a Web Report for a Cisco Prime-Like LWAP Inventory report for Cisco WLC's.

Additional information: Soalrwinds WLC Inventory Report – Slashdoom

By request, I've created a second report with IP addresses.  My LWAPs just grab DHCP addresses so I don't really need this info but if you do see: Cisco WLC LWAP Report (w/IP)

Cisco+WLC+LWAP+Inventory.zip
  • Hello,

    I'm very new on that, so maybe I'm doing something wrong. But would you like to tell me why am I getting the error?

    Report resource failed to properly initialize. » View Details

    Error setting up report cell during rendering 'Custom Table.'

    Error executing SQL: Invalid object name 'orionnpm..Nodes'.
    Query:
    select * from (
    SELECT
    max(case when cp.UniqueName = 'bsnAPName' then cps.Status else '' end) as AP_Name
    ,max(case when cp.UniqueName = 'bsnAPModel' then cps.Status else '' end) as AP_Model
    ,max(case when cp.UniqueName = 'bsnAPSerialNumber' then cps.Status else '' end) as AP_SerialNumber
    ,max(case when cp.UniqueName = 'bsnAPLocation' then cps.Status else '' end) as AP_Location
    ,Nodes.Caption as Controller
    FROM
    orionnpm..Nodes
    inner JOIN orionnpm..CustomPollerAssignment cpa ON Nodes.NodeID = cpa.NodeID
    inner JOIN orionnpm..CustomPollerStatus cps ON cpa.CustomPollerAssignmentID = cps.CustomPollerAssignmentID
    left JOIN orionnpm..CustomPollers cp ON cpa.CustomPollerID = cp.CustomPollerID
    GROUP BY Nodes.Caption, cps.RowID
    ) a
    WHERE AP_Name <> '' or AP_Model <> '' or AP_SerialNumber <> '' or AP_Location <> ''
    ORDER BY AP_Name

  • Sadly, I no longer work for a company that uses SolarWinds.  So my ability to really look into this is limited.

    I guess the first things I would check are the the custom pollers are working as expected.  So you would import the universal device poller template into your UnDP manager.  Add your Cisco WLC into NPM has a new node.  Assign the custom pollers to the Cisco WLC and after a few polling cycles make sure that the custom pollers are populated with data under the WLC device in UnDP manager.

    Once you have that the report should work...unless SW has changed the name of the tables it uses or something.

  • This is the query that ended up working for me:

    select * from (

    SELECT

    max(case when cp.UniqueName = 'bsnAPName' then cps.Status else '' end) as AP_Name

    ,max(case when cp.UniqueName = 'bsnAPModel' then cps.Status else '' end) as AP_Model

    ,max(case when cp.UniqueName = 'bsnAPSerialNumber' then cps.Status else '' end) as AP_SerialNumber

    ,max(case when cp.UniqueName = 'bsnAPLocation' then cps.Status else '' end) as AP_Location

    ,Nodes.Caption as Controller

    FROM

    Nodes

    inner JOIN CustomPollerAssignment cpa ON Nodes.NodeID = cpa.NodeID

    inner JOIN CustomPollerStatus cps ON cpa.CustomPollerAssignmentID = cps.CustomPollerAssignmentID

    left JOIN CustomPollers cp ON cpa.CustomPollerID = cp.CustomPollerID

    GROUP BY Nodes.Caption, cps.RowID

    ) a

    WHERE AP_Name <> '' or AP_Model <> '' or AP_SerialNumber <> '' or AP_Location <> ''

    ORDER BY AP_Name

  • Chris,

    Great Script; Thank you for this Post.

    After adding and assigning the Cisco WLC LWAP Inventory UnDP, I have finally got Cisco Light Weight Access Point Name, Serial Number and Model Number from behind their WLC within 1 Inventory Report.

    As will see from the Script below I have being trying to find the right SQL JOIN/s to Add the Access Point IP Address, Access Point Type and Access Point Location.

    When enabling lines 4, 8, 10, 18, 19, and 22 (Disabling Line 21), the Data that was being displayed within the AP Serial Number, AP Model and AP Location is no longer shown within the Table / Inventory Report.

    Can you or anybody else within the THWACK Community advise how this SQL Syntax can be changed to show the following within 1 Report?

    1. Access Point Name,
    2. Access Point IP Address, (NOT the WLC's).
    3. Access Point Serial Number, (NOT the WLC's).
    4. Access Point Model,
    5. Access Point Location,
    6. Access Point Node Type, (I plan to Include the Autonomous Wi-Fi Access Points to this Inventory)
    7. Access Point Node WLC,
    8. Access Point Site Location.

    SELECT * FROM (
    SELECT
    MAX(CASE WHEN cp.UniqueName = 'bsnAPName' THEN cps.Status ELSE '' END) AS [Acess Point Name],
    -- wap.IPAddress AS [AP IP Address],
    MAX(CASE WHEN cp.UniqueName = 'bsnAPSerialNumber' THEN cps.Status ELSE '' END) AS [AP Serial Number],
    MAX(CASE WHEN cp.UniqueName = 'bsnAPModel' THEN cps.Status ELSE '' END) AS [AP Model],
    MAX(CASE WHEN cp.UniqueName = 'bsnAPLocation' THEN cps.Status ELSE '' END) AS [AP Location],
    -- wlapsv.WirelessType AS [AP Node Type],
    Nodes.Caption AS [AP Node WLC]
    -- wlapsv.N_Location AS [AP Site Location]

    FROM Nodes

    INNER JOIN CustomPollerAssignment cpa ON Nodes.NodeID = cpa.NodeID
    INNER JOIN CustomPollerStatus cps ON cpa.CustomPollerAssignmentID = cps.CustomPollerAssignmentID
    LEFT JOIN CustomPollers cp ON cpa.CustomPollerID = cp.CustomPollerID

    --INNER JOIN Wireless_AccessPoints wap ON cps.Status = wap.Name
    --INNER JOIN NPM_NV_WL_APS_V wlapsv ON wap.Name = wlapsv.AP_Name

    GROUP BY Nodes.Caption, cps.RowID ) a
    --GROUP BY wap.IPAddress, wlapsv.WirelessType, Nodes.Caption, wlapsv.N_Location, cps.RowID ) a
    --GROUP BY Wireless_AccessPoints.IPAddress, NPM_NV_WL_APS_V.WirelessType, Nodes.Caption, NPM_NV_WL_APS_V.N_Location, cps.RowID ) a

    WHERE [Acess Point Name] <> '' OR [AP Serial Number] <> '' OR [AP Model] <> '' OR [AP Location] <> ''

    ORDER BY [Acess Point Name]

    Thank you in advance for your help.

  • Hi Fellow THWACK'sters...

    FYI...

    ALL Wi-Fi Access Points Inventory Report

    I will look forward to your feedback.