Shared Files for the Orion Platform
  • Access Layer VLANs (with good/bad VLAN defined)

    This provides a list of all interfaces with an assigned Access-level VLAN (trunks ignored). Includes icons for vendor, interface type, and a faux-status on a matching VLAN ID (as defined in the query). Mostly this was created so that I could validate that you can stitch together VLAN --> Interface --> Node correctly, but I figured I would share it. Summary Page (query as is) Node Details Page (requires minor edits, see below ) Possible Use Cases Could be used to identify ports on specific...
    • 11 downloads
    • 7 Jul 2022
  • Query date template assigned node SAM (SQL)

    Note this is a SQL query (not SWQL). Query date template assigned node SAM SET NOCOUNT OFF SET ROWCOUNT 0 DECLARE @StartDate DateTime DECLARE @EndDate DateTime DECLARE @Rango DateTime DECLARE @ResultVar real SET @StartDate = DATEADD(DD,-30,DATEADD(DD,DATEDIFF(DD,0,GETDATE()),0)) SET @EndDate = DATEADD(DD,0,DATEADD(DD,DATEDIFF(DD,0,GETDATE()),0)) SELECT a.name ,n.caption ,a.created ,a.lastModified FROM APM_Application A INNER JOIN Nodes N ON a.nodeid = n.nodeid WHERE a.Created >= @StartDate...
    • 0 downloads
    • 28 Jun 2022
  • Run a query about licensed component monitors in SAM

    The query is from the below site but re-written to work in SWQL Studio or a custom query Run a report about licensed component monitors in SAM (solarwinds.com) Hope its useful, I also adjust the case part and just show the column data as I want to found out the actual total not that its 50 for AppInsight, etc. replace - CASE WHEN r . Template = 'Windows Scheduled Tasks' THEN 5 WHEN r . Template LIKE 'AppInsight for IIS' THEN 30 WHEN r . Template LIKE 'AppInsight for%' THEN 50 ELSE COUNT...
    • 3 downloads
    • 23 Jun 2022
  • Query last 7 days of alert email action history in SWQL

    Quick query to pull the last 7 days of alert email action history via SWQL. SELECT ac.Name AS [Alert Configuration] ,ah.Message AS [Action Message] ,ah.AlertObjects.EntityNetObjectId ,ah.EventType ,ah.TimeStamp ,ah.ActionID ,a.ActionTypeID AS [ActionType] ,a.Title AS [ActionName] ,n.NodeName AS [Node] FROM Orion.AlertHistory AS ah INNER JOIN Orion.Nodes AS n ON CONCAT('N:', TOSTRING(n.NodeID)) = ah.AlertObjects.EntityNetObjectId LEFT JOIN Orion.Actions AS a ON a.ActionID...
    • 4 downloads
    • 10 Jun 2022
  • Volume Utilization with Forecast Capacity

    So I developed this a while ago, and recently have been asked for something similar again. Prompted me to refine it a little bit more and provide it to the larger community. Can be displayed as a custom query, and will display Volume information along with its capacity forecast. Decided to make this because its hard to get those metrics in one consolidated widget. The code to make it searchable by Volume/Node caption is already present, just uncomment where appropriate.
    • 23 downloads
    • 26 May 2022
  • Modern Dashboard List (and Search)

    Very simple query to pull a list of non-system, publicly posted Modern Dashboards. If you'd like to enable search, uncomment the line indicated in the query.
    • 23 downloads
    • 30 Mar 2022
  • Active Alerts with Severity

    Modified to remove Custom Query and pull 'correct' lookup for severity.
    • 26 downloads
    • 24 Mar 2022
  • Unmanaged & Muted Nodes (with a Node Custom Property Filter]

    Inspired by a comment thread from Unmanaged Muted - Report Lab - The Orion Platform - THWACK (solarwinds.com) This is a custom query that can be put on a global summary page to show all devices which have been unmanaged or muted based AND match a specific filter. Raw Results: As rendered on a Summary Page: Custom Properties Required: Orion Nodes / AuditCategory [string]
    • 36 downloads
    • 21 Mar 2022
  • Query nodes failing to poll via their configured polling technology

    This query is more meant to be an alert, however could also be thrown into a custom widget within a view and is very useful to have in and of itself also. SELECT Nodes.Uri, Nodes.DisplayName FROM Orion.Nodes AS Nodes WHERE ( MINUTEDIFF(Nodes.LastSystemUptimePollUtc, GETUTCDATE()) >= 480 AND ( Nodes.PolledStatus = 1 AND Nodes.ObjectSubType IN ('Wmi', 'Agent', 'SNMP') ) )
    • 14 downloads
    • 23 Feb 2022
  • Query Alert Captions that don't match real Entity Captions

    Note this is a SQL query (not SWQL). This query will show alert captions that do not match their true entity captions. This is a continuing problem within many Orion environments where nodes get updated and they're left with stale alert captions that don't match. This can help you clean that mess up. SELECT sub1.RealCaption ,sub1.AlertCaption FROM ( SELECT CASE WHEN a.EntityType = 'Orion.Nodes' THEN n.Caption WHEN a.EntityType = 'Orion.NPM.Interfaces' THEN i.Caption WHEN a.EntityType...
    • 12 downloads
    • 23 Feb 2022
  • Query Orion Views

    Quick query to view the Orion (classic) views. SELECT v.ViewID ,v.ViewTitle ,v.ViewGroupName ,v.ViewType ,v.LimitationID FROM Orion.Views AS v WHERE v.ViewID IN ( 1, 2 )
    • 8 downloads
    • 23 Feb 2022
  • SQL Advanced Find/Replace within email alert actions

    I had the need to update the email action message (subject) of email actions, and also the email address fields in bulk and this is what I used to do that. Note these are both SQL queries - not SWQL -- Update the Email Message of Actions -- with the following query UPDATE dbo.ActionsProperties SET dbo.ActionsProperties.PropertyValue = replace (dbo.ActionsProperties.PropertyValue, 'oldval', 'newval') FROM dbo.ActionsProperties INNER JOIN dbo.Actions ON dbo.ActionsProperties.ActionID =...
    • 10 downloads
    • 17 Feb 2022
  • Orion agent plugin details

    SELECT a.Plugins.PluginId ,a.Plugins.Status ,a.Plugins.StatusMessage ,a.Plugins.Version ,a.Name ,a.IP ,a.AgentId ,a.AgentGuid ,a.Node.NodeID ,a.AgentStatus ,a.AgentStatusMessage ,a.ConnectionStatus ,a.ConnectionStatusMessage FROM Orion.AgentManagement.Agent AS a WHERE a.Node.NodeID = 1
    • 5 downloads
    • 17 Feb 2022
  • Node enabled pollers query

    Query has NetObjectID = 1 as an example, simply replace with the node id necessary (or adjust as needed to show all data). SELECT n.Caption ,p.PollerID ,p.PollerType ,p.Enabled ,p.NetObjectID FROM Orion.Pollers AS p INNER JOIN Orion.Nodes AS n ON n.NodeID = p.NetObjectID AND p.NetObjectType = 'N' AND p.Enabled = 1 INNER JOIN Orion.DeviceStudio.PollerAssignments AS d ON d.NetObjectID = n.NodeID AND d.NetObjectType = 'N' AND d.Enabled = 1 WHERE p.NetObjectID = 1 UNION ALL ( SELECT...
    • 9 downloads
    • 17 Feb 2022
  • Conditional email addresses within email actions SWQL query

    This may belong in the alert lab - but it's not explicitly an alert of xml file type and is in essence a SWQL query. Regardless I wanted to show how you can use the custom SWQL variables within the to / cc / bcc fields in email actions to send email conditionally to specific folks. This could also be a custom SQL variable also but works out better to be SWQL. Similar custom variables can also be leveraged in other alert actions such as filling in the data of a text custom property conditionally...
    • 7 downloads
    • 17 Feb 2022
  • Query for agent status and response time pollers enabled and disabled

    SELECT n.Caption ,n.IP_Address ,n.Engine.ServerName ,n.ObjectSubType ,n.Uri AS [NodeUri] ,p1.PollerType1 AS [EnabledPoller1] ,p2.PollerType2 AS [EnabledPoller2] ,p3.PollerType3 AS [DisabledPoller3] ,p4.PollerType4 AS [DisabledPoller4] ,p1.p1Uri AS [EnabledPollerUri1] ,p2.p2Uri AS [EnabledPollerUri2] ,p3.p3Uri AS [DisabledPollerUri3] ,p4.p4Uri AS [DisabledPollerUri4] FROM Orion.Nodes AS n LEFT JOIN ( SELECT p.PollerID, p.PollerType AS [PollerType1], p.Enabled, p.NetObjectID...
    • 8 downloads
    • 17 Feb 2022
  • Node application component assigned credentials SWQL query

    Update 04/20/2022... re-wrote the SQL query into a SWQL query, the file to download is the SWQL query but I'll keep both versions available here for reference. SWQL: SELECT n.NodeID ,n.Caption AS [DisplayName] ,n.SysName AS [Hostname] ,n.IP_Address AS [IP Address] ,n.ObjectSubType AS [Monitoring Method] ,a.ID as ApplicationID ,a.Name as [Application] ,c.ComponentID as ComponentId ,c.Name as Component ,cts.Value as TemplateCredId ,cs.[Value] as OverridenCredId ,cred.Name...
    • 14 downloads
    • 17 Feb 2022
  • Node assigned credentials SWQL query

    Update 04/20/2022... re-wrote the SQL query into a SWQL query, the file to download is the SWQL query but I'll keep both versions available here for reference. SWQL: SELECT n.NodeID ,n.Caption AS [DisplayName] ,n.SysName AS [Hostname] ,n.IP_Address AS [IP Address] ,n.ObjectSubType AS [Monitoring Method] ,n.Community AS [Snmpv1/2c-RO] ,n.RWCommunity AS [Snmpv1/2c-RW] ,c1.Name AS [SNMPv3-RO] ,c2.Name AS [SNMPv3-RW] ,c3.Name AS [WMI-Cred] FROM Orion.Nodes AS n LEFT JOIN Orion...
    • 13 downloads
    • 17 Feb 2022
  • Query nodes down with the most recent note and last time seen up

    This query will pull from both the NetObjectDownTime table, and the Events table (default to NetObjectDownTime via the ISNULL function, fallback to Events) to pull the last time node was seen up along with the most recent note. SELECT n.Caption ,n.DetailsUrl AS [_LinkFor_Caption] ,n.Status ,CONCAT('/NetPerfMon/images/Small-', n.StatusLED) AS [_IconFor_Caption] ,nn2.Note AS [Most Recent Note] ,TOLOCAL(ISNULL(d.DateTimeUntil, e.EventTime)) AS [Last Time Reported UP (EST)] FROM Orion...
    • 9 downloads
    • 17 Feb 2022