Shared Files for the SolarWinds Platform
  • importReports.ps1

    Since we're migrating to a new HCO installation and starting with a clean database I needed a way of getting all the Alerts, SAM Templates and Reports across to the new install. Scripts to export and import all of those are available, with a little hacking, apart from Reports. I've created a script based on (I think) KMSigma's 'import alerts' script and changed the SWIS command based on the fields from orion.report.createreport in SWQL Studio. On the old poller, use exportReports.ps1 found on these...
    • 0 downloads
  • SQL Server Scripts for Index Analysis and Tuning

    As seen at SQL Saturday Denver Problem Statement: One of the most common relational database query performance problems stems from reading too much data in order to obtain a relatively small query result set. DBAs and Developers are often unaware of the excessive reads that cause queries to run slow. Excessive reads is often solved by proper indexing , index maintenance and query tuning . Determining proper indexing is not an exact science , as it requires an understanding of a variety...
  • Export Modern Dashboard (Easy Way)

    Referring to the recent use case, I decided to create a very easy way to export Modern Dashboards using HTTPS POST requests to API. This approach does not require any additional installations or configuration and can be run locally on SolarWinds server or remotely from any location with access to SolarWinds REST API. How-To and walkthrough of the script is published on my YouTube Channel. I appreciate subscribing
    • 15 downloads
  • Import Modern Dashboard (Easy Way)

    Referring to the recent use case, I decided to create a very easy way to import Modern Dashboards using HTTPS POST requests to API. This approach does not require any additional installations or configuration and can be run locally on SolarWinds server or remotely from any location with access to SolarWinds REST API. How-To and walkthrough of the script is published on my YouTube Channel. I appreciate subscribing
    • 38 downloads
  • Script to change an Interface's polling interval (Used with alerting)

    This script is used to automatically change the polling interval of a busy interface, triggered by the alert found here: Automatically Change Interface Polling Interval (Automation) Have a look at Dynamically change interface polling interval using alerts and PowerShell for a detailed explanation how it works and the drivers behind this automation.
    • 4 downloads
  • Test a Port on a Remote Machine

    I had a need to test a port on a remote machine, but the internal TCP Port Monitor only works for the machine where it is assigned. I wrote this powershell script to test the port on the remote machine and thought I would share it here. In it's current form, you can invoke the script with parameters from the command line. Let's run a test against Google's port 443. .\TestRemotePort.ps1 -RemoteHost 142.250.68.238 -Port 443 Statistic: 1 Message: Port 443 on 142.250.68.238 is open. If you are...
    • 12 downloads
  • SolarWinds IIS Summary View Log Parser

    Ever wondered which of your Classic Dashboards are actually being used? Who visited the page? How many times? These are the questions this script aims to answer. I wrote this because we have an internal audit process where we evaluate the use of dashboards. Anything that doesn't get used yearly we look at reworking/updating/removing. This used to involve reaching out to customers individually to ask them if they still used certain dashboards... well now that we're storing the output of this script...
    • 11 downloads
  • Update Agent Node to new Polling Engine

    This script will call into the Orion API and move a group of agent nodes from one engine to another. You will need to update the SWQL ($query) to only capture the nodes you wish to migrate. You will also need to know the EngineID of the Polling engine you wish to migrate nodes to.
    • 11 downloads
  • Delete Nodes from Spreadsheet

    A script that allows you to delete multiple nodes from a spreadsheet. Read to notes in the script.
    • 25 downloads
  • Get SWQL Queries from Modern Dashboard Widgets

    This is a quick and dirty SWQL query extractor I bult for working with Modern Dashboards. Frequently I'll want to know what awesome query someone wrote to build the dashboard, but I don't necessarily want to import it into my environment to just take a peek. I find this useful to know if a Modern Dashboard will work with the data in my environment. Now, I can just extract the SWQL with this script and plug the query into SWQL Studio and see if anything if value is returned - easy. I don't have...
    • 45 downloads
  • UI for scheduling nodes to maintenance using SolarWinds REST API and Python

    As you know, SolarWinds doesn't have the function to unmanage several nodes at the same time without node administration rights. Therefore, I developed a UI interface based on Python and dash as python library. You can add all the nodes you need and schedule them to be unmanaged. API method: Load Nodes Data: https://localhost:17774/SolarWinds/InformationService/v3/Json/Query?query=SELECT+NodeId,Caption,Ip_Address+FROM+Orion.Nodes The UI is in Spanish. The UI has a button to load nodes...
  • Export Alerts from SolarWinds Platform

    This script exports all custom alerts (not out-of-the-box) from your SolarWinds Platform server to the local path (where executed). The output path can be changed in the script variables. This is a destructive script - meaning it doesn't care if older versions of the alert have matching file names. Please note the query used in the script: SELECT [Alerts].AlertID , [Alerts].Name FROM Orion.AlertConfigurations AS [Alerts] WHERE [Alerts].[Canned] = 'FALSE' ORDER BY [Alerts].[Name] It...
    • 34 downloads
  • 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...
    • 28 downloads
  • 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...
    • 48 downloads
  • 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...
    • 13 downloads
  • 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...
    • 31 downloads
  • 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...
    • 35 downloads
  • 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 (solarwinds.com) 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...
    • 30 downloads
  • 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=...
    • 10 downloads