Shared Files for the Orion Platform
  • WMI assigned Nodes

    SELECT [Node].Caption, [Node].IPAddress, [Credential].Name, [NodeSettings].SettingName, [NOdeSettings].SettingValue, [Node].NodeID FROM Orion.Nodes AS [Node] JOIN Orion.NodeSettings AS [NodeSettings] ON [Node].NodeID = NodeSettings.NodeID JOIN Orion.Credential AS [Credential] ON [NodeSettings].SettingValue = Credential.ID WHERE [Node].ObjectSubType = 'WMI' AND [NodeSettings].SettingName = 'WMICredential' ORDER BY [Credential].Name, [Node].Caption, [NodeSettings].SettingValue...
  • Change credential set used by Windows nodes

    So I've assigned myself of the task of cleaning up a decade's worth of credentials stored in various SolarWinds modules. In doing so I realized that we had a duplicate; the same credentials identified in two credential sets (slightly different names) used pretty much equally to poll our Windows servers. Since I haven't done it before, I thought this would be a great job for a SWIS PowerShell script! Input is the Credential Names of the two credentials sets; the old set (which will be discontinued...
  • PS1 EventID 1309 email alert if SolarWinds site fails to load

    I put this alert together to send an alert in the event the SolarWinds site fails to load. There is the occasional false positive as there are instances where some users try to go to a site that doesn't exist. The purpose for this alert was to inform the SW back end team when SW site was unavailable. For this to work simply set up a task sequence in Windows to run this script every 5 minutes. The script is designed to look back at the application event log at the previous 10 minutes and if the 1309...
  • Alert Action: HA Failover using PowerShell

    I have a unique scenario that i needed to account for to trigger a HA failover in SolarWinds. This PowerShell script is used as an alert action and requires the PoolID to be passed into it. My Alert Action is configured as followed. The text inside of the 'Network path to external program contains: C:\windows\system32\windowspowershell\v1.0\powershell.exe -ExecutionPolicy unrestricted -command "C:\Support\Scripts\Alert_Agent_Status_HA_Failover.ps1 ${N=SwisEntity;M=PoolId}" Setup Considerations...
  • SolarWinds Report Exporter - Tested with SolarWinds Platform 2023.2

    The attached PowerShell script will allow you to backup your reports. Useful if you have many hours invested into custom reports, which would be lost should your database have a .. problem! Add your SolarWinds server's IP/Hostname, along with your admin user & password to this line to setup the SWIS connection which is called later on in the script. Specify the output location for the reports here. Modify or remove the included where clause to filter for the reports you need to export...
  • Generate an HTML Report of Interface Config Snippets using PowerShell

    The TEAMS/phone administrator was complaining about the latest in our port security measures as we replaced all our LAN switches. We wanted to create a report showing the interface configurations for all the ports we labeled as having a phone, WAP, or a small switch. [ The small switches are used by KASTLE, our physical security systems provider, hence the label in the script. ] The PowerShell makes a SWQL query to find all the interfaces with the descriptions we are interested in, uses the SWIS...
  • Find & Replace Community Strings (Read-Only and Read-Write)

    A quick little script that I threw together to help out someone who needs to change all the community strings in their environment. Inspired by: Mass Update Community String - Feature Requests - The Orion Platform - THWACK ( The queries above ( $SwqlRoQuery and $SwqlRwQuery) can be tuned specifically to your needs in your environment. The important thing to know is that any node that's returned from $SwqlRoQuery will be updated with $NewRoCommunity and the same applies for the...
  • Create multiple User accounts in SolarWinds

    Please, refer to the below steps to create multiple User accounts in one go in SolarWinds. RDP to the SolarWinds Main Polling Engine. Open Windows Powershell ISE and run as administrator. Run the below script. Import-Module SwisPowerShell $hostname = "10.X.X.X" ###SolarWinds Website IP $user = "Admin" ###Solarwinds Web console Admin Username $password = "XXXXX" ###Solarwinds Web console Admin Password $SolarAcc=@("User1","User2","User3") ### Array of User Account Usernames $SolarPwd=...
  • Bulk Import ICMP Nodes

    Perform a bulk import of ICMP nodes from a spreadsheet. Nodes are added to Poller #1 and placed into an unmanaged state.
  • Upload Custom Properties

    Allows you to manually upload custom properties. Works in conjunction with the Download Custom Properties script. You can do the same through the GUI but on version 2020.2 we had issues where Custom Property import failed so we used this script to get the imports to run. The .CSV file used should be in this format. NodeID IPAddress Caption CustomProperty1 CustomProperty2 CustomProperty3 CustomProperty4 CustomProperty5 CustomProperty6 CustomProperty7 CustomProperty8...
  • Export Custom Properties

    Powershell script to export custom properties.
  • Unmanage or Suppress Alerts (Applications)

    This script provides two ways to not hear about applications during a maintenance window. The script is fully customizable for your needs and commented thoroughly. It uses one of two methods: # Using 'Unmanage' verb on 'Orion.APM.Application' entity # Arguments: # [string]netObjectId (in the form of "AA:#"") # [datetime]unmanageTime # [datetime]remanageTime # [bool]isRelative # Using 'SuppressAlerts' verb on 'Orion.AlertSuppression' entity # Arguments: # [string[]]entityUris # [datetime...
  • Set Classic Dashboards to Equal Column Widths

    This is something that I threw together a few years ago in a pure T-SQL way. It's generally not a great idea to do it that way, so I decided to re-do this using the SolarWinds API. Basically, it uses a display pixel width value you specify (Line 17) and determines the number of pixels for each column in a Classic Dashboard. Default settings are for a full HD system (1920w x 1080h). I used several advanced PowerShell features (adding script properties to objects) to optimize this for memory on...
  • Workaround - Oracle .Net Framework Data Provider Error

    As outlined here: Oracle User Experience Monitor: Failed to find or load the registered .Net Framework Data Provider - Forum - The Orion Platform - THWACK ( This script 1) Downloads the Oracle package from Oracle to a Temporary Location. Then Expand that .zip to a oracle folder. (c:/temp & c:/oracle 2) Moves the required dll to the Orion installation directory 3) Registers the .dll with the odp. 4) Removes .zip from Assumptions: - Ran on the target system - Target system has internet...
  • Fix SAM PowerShell Remoting - 2022.4

    As Outlined 2022.4 Upgrade: Remote PowerShell Broken - Forum - Server & Application Monitor (SAM) - THWACK ( This simple script assumes a default Orion installation location and makes the needed changes to the config file.
  • Install Latest Orion SDK from Github (PowerShell)

    This script will fetch the latest release of the Orion SDK from Github and install it. I did this script to help building lab VMs. Needs some refinement, but it's a good start. <# Script: Install_OrionSDK.ps1 Author: PLanglois Version: 1.0 No arguments needed. This script will fetch the latest release of OrionSDK on Github. To Do: * Validate if SWQL Studio is already installed and if version is lower than target. * Enhance error handling #> #Requires -RunAsAdministrator...
  • Python Script to work create, update and assign credentials used for polling

    1. Create a new SNMPv2 credential. 2. Update an existing SNMPv2 credential. 3. Create a new username/password credential. 4. Update an existing username/password credential. 5. Assign a username/password credential to node(s) 6. Create a new SNMPv3 credential set. 7. Update an existing SNMPv3 credential set. 8. Assign an existing SNMPv3 credential to node(s). 9. List All Credentials. 10. List All Nodes and assigned credentials
  • Python Script to Enable/Disable Application Components

    Python script to demonstrate how to work with Application Templates and Application Components 1. List Application Templates. 2. List Applications. 3. List Application Component Types. 4. List Components in Application Template. 5. Enable/Disable a component type in all Application Monitor Templates using it. 6. Enable/Disable a component in a specific Application Template. WARNING. Avoid using this for AppInsights (IIS, Exchange, SQL and Active Directory).
  • Register Passive Agents to SolarWinds Platform

    This script will register a passive agent, then scan for resources, and automatically import the resources. You'll need the following information for registering an agent (outlined within the script as well): Agent Name Agent Hostname Agent IP Address Agent Port Polling Engine ID Shared Secret Proxy ID Auto Update Enabled Tested with SolarWinds Platform 2022.2.0 and agent 2022.2.0.1952. Currently only tested on a Windows agent as a target, but there's no reason it should...
  • Acknowledge Solarwinds alert by email with oAuth and Azure AD

    Updated 2022-07-05 to use oAuth (modern authentication) and to require the AlertObjectID in the message body. If you have been using an older version of this script, please read the documentation again, as there have been several changes since the previous version. This Powershell script allows end users to acknowledge or comment upon a Solarwinds alert via email. The script assumes that your organization uses Exchange and Azure AD as its email platform. Prerequisites: An email account (...