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.

Determining the Version and Hotfix Level of Orion Platform Products

The Orion Platform product details are displayed in a number of ways and below I'm going to cover a few ways to get this information.  Try the first and if that's not available move on down the list.

I'm going to cover a few options:

  1. Look at the Orion Web Console footer
  2. Add/Remove Programs information in Windows
  3. Query the SolarWinds Information Service (SWIS) with PowerShell
  4. Query the SolarWinds Orion database with SQL

Look at the Orion Web Console footer

If you have access to the Orion Web Console, you can find the version numbers and hotfix levels right from the footer - you don't even need to log in.

Note: This has been removed from future versions of the SolarWinds Orion Platform.  To get the versions, use one of the below options.

Scroll to the bottom of the screen. The black bar lists the Orion Platform products installed and their version numbers. For recent releases, the version number for all installed products is at the end of the list, and any hotfixes are listed after the product name.

KMSigma_0-1610575445680.png

In the example above, the version is 2020.2.1 (at the far right)

Each installer (Orion Platform, NPM, NCM, etc.) can have their own Hotfix level.  Hotfix 1 for NPM is not the same as Hotfix 1 for SAM.  In the above example:

  • The Orion Platform, NCM, VMAN, and NTA are running 2020.2.1 with HF2
  • IPAM, SAM, SCM, LA, and UDT are running 2020.2.1 with HF1
  • VNQM, SRM, NPM, and WPM are running 2020.2.1 with no hotfixes

Add/Remove Programs information in Windows

If your server is online and you have remote desktop capabilities, you can open the Add/Remove Programs option within Windows.  Getting to the Control Panel has changed for recent versions of Windows Server, but there is a way that works on 2012 and later versions.

Right-click on the Start button and select File Explorer. 

KMSigma_1-1610576452095.png

In the address bar at the top, start typing "Control Panel" and select it when it appears.

KMSigma_2-1610576509665.png

In the top-right, switch the view to either "Small icons" or "Large icons" and then click "Programs and Features."

KMSigma_4-1610576919783.png

The version number for the products will be the number indicated by "Orion Core Services."

KMSigma_5-1610577147148.png

You can get the hotfix version for the various products by going to "View installed update" (top-left).

KMSigma_6-1610577258646.png

Query the SolarWinds Information Service (SWIS) via PowerShell

This example uses the SolarWinds Orion SDK to query the system for information about the installed software.  It requires the Orion SDK (which does not ship with the other installers).

<#

Get-OrionServerVersionInformation.ps1

Gets the installed product versions of SolarWinds products installed in your infrastructure


Results appear like this:

Hostname     ServerType Product                          Version     
--------     ---------- -------                          -------     
NOCKMSMPE01V MainPoller IP Address Manager               2020.2.1    
NOCKMSMPE01V MainPoller Log Analyzer                     2020.2.1    
NOCKMSMPE01V MainPoller NetFlow Traffic Analyzer         2020.2.1 HF2
NOCKMSMPE01V MainPoller Network Configuration Manager    2020.2.1 HF1
NOCKMSMPE01V MainPoller Network Performance Monitor      2020.2.1    
NOCKMSMPE01V MainPoller Orion Platform                   2020.2.1 HF1
NOCKMSMPE01V MainPoller Server & Application Monitor     2020.2.1 HF1
NOCKMSMPE01V MainPoller Server Configuration Monitor     2020.2.1    
NOCKMSMPE01V MainPoller Storage Resource Monitor         2020.2.1    
NOCKMSMPE01V MainPoller User Device Tracker              2020.2.1 HF1
NOCKMSMPE01V MainPoller VoIP and Network Quality Manager 2020.2.1    
NOCKMSMPE01V MainPoller Web Performance Monitor          2020.2.1    

#>


if ( -not ( $SwisCreds ) )
{
    $SwisCreds = Get-Credential -Message "Enter your Orion credentials"
}
$SwisConnection = Connect-Swis -Hostname "<Orion Server IP or HostName>" -Credential $SwisCreds

# Get the details for your Orion Servers

$SwqlOrionServerData = @"
SELECT HostName,
       ServerType,
       Details 
FROM  Orion.OrionServers 
"@

# Build an empty report for the version information
$VersionReport = @()

# List of actual product names (ignoring "features" that appear like products
$ProductNames = "IP Address Manager", "Log Analyzer", "NetFlow Traffic Analyzer", "Network Configuration Manager", "Network Performance Monitor", "Orion Platform", "Server & Application Monitor", "Server Configuration Monitor", "Storage Resource Monitor", "User Device Tracker", "VoIP and Network Quality Manager", "Web Performance Monitor"


$ServerData = Get-SwisData -SwisConnection $SwisConnection -Query $SwqlOrionServerData

# Cycle through each server found
ForEach ( $Server in $ServerData )
{
    # Get the information from the JSON blob
    ForEach ( $Product in ( $Server.Details | ConvertFrom-Json ) | Select-Object -Property Name, Version, HotfixVersionNumber | Sort-Object -Property Name, Version, HotfixVersionNumber )
    {
        # Here's where we ignore the "features" that are listed like a product
        if ( $Product.Name -in $ProductNames )
        {
            if ( $Product.HotfixVersionNumber )
            {
                # if a hotfix exists, add that at the end of the the version number
                $VersionReport += New-Object -TypeName PSObject -Property ( [ordered]@{ Hostname = $Server.Hostname; ServerType = $Server.ServerType; Product = $Product.Name; Version = "$( $Product.Version ) HF$( $Product.HotfixVersionNumber )" } )
            }
            else
            {
                # if it doesn't exist, just show the version number
                $VersionReport += New-Object -TypeName PSObject -Property ( [ordered]@{ Hostname = $Server.Hostname; ServerType = $Server.ServerType; Product = $Product.Name; Version = $Product.Version } )
            }
        }
    }
}
# Output the report
$VersionReport

Your results should appear something like this.

KMSigma_1-1608567843377.png

But this same information is stored within the database itself.  So, if your web console is completely inaccessible you can still get this information.

Query the SolarWinds Orion database with SQL

If you Orion Web Console or server are offline, you can get the same information directly from the Orion database.

/* Get a list of all of the Orion servers and the associated software on them */
SELECT [Hostname]
     , [ServerType]
	 , [Product]
	 , CASE
	      WHEN HotFix IS NULL THEN [ReleaseVersion]
		  ELSE [ReleaseVersion] + ' HF' + [HotFix]
	   END AS [Version]
FROM [OrionServers]
CROSS APPLY OPENJSON([Details])
   WITH (
      [Product]        varchar(50) '$.Name'
    , [ReleaseVersion] varchar(25) '$.Version'
	, [Hotfix]         varchar(5)  '$.HotfixVersionNumber'
   ) AS VersionInfo
-- Ignore 'products' that are actually just 'features'
WHERE [Product] in ( 'IP Address Manager', 'Log Analyzer', 'NetFlow Traffic Analyzer', 'Network Configuration Manager', 'Network Performance Monitor', 'Orion Platform', 'Server & Application Monitor', 'Server Configuration Monitor', 'Storage Resource Monitor', 'User Device Tracker', 'VoIP and Network Quality Manager', 'Web Performance Monitor' )
ORDER BY OrionServerID

Your results should appear as a list of products.

KMSigma_0-1608567717960.png

Updates:

Per a suggestion later in this thread, you can put this information into a Custom Table widget on any dashboard by selecting the Advanced Configuration and putting in the above SQL. (Thanks  for the reminder about this option!)

KMSigma_0-1608747600723.png

The results should look something like this:

KMSigma_1-1608747664972.png

References:
Parents Reply Children