Observability
Deployment Health shows Critical for SolarWinds Platform Website TCP port or SWIS TCP port after upgrade in SolarWinds Platform
This article provides information about an issue where Deployment Health reports Critical status for SolarWinds Platform Website TCP port and/or SWIS TCP port even though the ports are open, listening, and reachable.
First published date
Last published date
Overview
Users may see one or both of the following checks reported as Critical in Deployment Health on the Main Poller after an upgrade:
- SolarWinds Platform Website TCP port
- SWIS TCP port
In affected environments, the issue may appear only on one server, such as the Main Poller, while other polling engines continue to pass the same checks.
Typical observations include:
- Deployment Health shows the TCP port checks in a Critical state
- Polling continues to work normally
- SWIS is accessible locally
- Manual connectivity tests to the reported ports succeed
- Active Diagnostics does not clearly explain why the checks are marked Critical
Example manual validation that may succeed:
Test-NetConnection -ComputerName 127.0.0.1 -Port 443
Test-NetConnection -ComputerName 127.0.0.1 -Port 17777
Example symptoms that may be observed:
- Deployment Health lists SolarWinds Platform Website TCP port as High or Critical
- Deployment Health lists SWIS TCP port as High or Critical
- The affected ports are confirmed as listening by the operating system
- Loopback or local TCP connection tests complete successfully
This behavior is a false-positive health result. The issue is with how the check is evaluated and reported, not with actual website or SWIS availability.
Product section
Cause
This issue can occur when Active Diagnostics reads old legacy Windows Firewall port entries and interprets them as blocked, even though the effective firewall state and runtime connectivity show the ports are healthy.
Common characteristics of this condition:
- The legacy firewall entry exists for port 443 and/or 17777
- The entry is stale or no longer reflects the current firewall behavior
- The port is actually open, listening, and reachable
- Windows Firewall may be disabled, or other active rules may still allow traffic
- Deployment Health relies on the legacy firewall metadata and reports a false-positive failure
The condition may reappear if the legacy entries are recreated by another process, such as:
- Group Policy refresh
- A security tool
- A startup script using the legacy firewall API
Resolution
Validate that the reported ports are actually healthy.
Recommended checks:
- Confirm the affected ports are listening on the server.
- Confirm local TCP connection tests succeed.
- Confirm the website and SWIS services are functioning normally.
- Review Deployment Health and Active Diagnostics results.
If the ports are confirmed healthy and the issue matches this article, remove the stale legacy firewall entries from the affected server.
Run the following PowerShell as Administrator:
<#
Scripts are not supported under any SolarWinds support program or service. Scripts are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The risk arising out of the use or performance of the scripts and documentation stays with you. In no event shall SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the scripts or documentation.
#>
$mgr = New-Object -ComObject HNetCfg.FwMgr
$ports = $mgr.LocalPolicy.CurrentProfile.GloballyOpenPorts
foreach ($p in @(443, 17777, 17778)) {
try {
$ports.Remove($p, 6)
Write-Host "Removed TCP port $p"
} catch {
Write-Host "Port $p not found or could not be removed"
}
}
After running the workaround, verify the legacy entries are no longer present:
<#
Scripts are not supported under any SolarWinds support program or service. Scripts are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The risk arising out of the use or performance of the scripts and documentation stays with you. In no event shall SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the scripts or documentation.
#>
$mgr = New-Object -ComObject HNetCfg.FwMgr
$mgr.LocalPolicy.CurrentProfile.GloballyOpenPorts |
Where-Object { $_.Port -in @(443, 17777, 17778) } |
Format-Table Port, @{L="Protocol";E={ if ($_.Protocol -eq 6) {"TCP"} else {$_.Protocol} }}, Enabled, Name -AutoSize
Then rerun the affected Deployment Health or Active Diagnostics checks.
Expected result:
- The false-positive TCP port checks clear
- Deployment Health no longer reports the healthy ports as Critical
If the issue returns later, investigate whether another process is recreating the legacy firewall entries.