Network Management

SolarWinds Information service crashing after 2022.4 update

This article explains the issue where the web console becomes intermittently inaccessible or unstable (i.e HTTP 500 errors) after upgrading to 2022.4

First published date

11/23/2022 6:44 PM

Last published date

2/10/2025 9:07 PM

Overview

After upgrading to 2022.4, the Orion web console will become intermittently unavailable (i.e. HTTP 500 errors) due to SolarWinds Information Services (SWIS) crashing every few minutes after startup.  No reasonable exception in the SWIS log, but the Windows Application event log will repeatedly have the following information:

Event Application logs:
Faulting application name: SolarWinds.InformationService.ServiceV3.exe, version: 2022.4.0.1179, time stamp: 0xc58bdec2
Faulting module name: clr.dll, version: 4.8.4515.0, time stamp: 0x624ce98e Exception code: 0xc00000fd Fault offset: 0x000000000001d8a3 Faulting process id: 0x4df0
Faulting application start time: 0x01d8fc2633b17abc
Faulting application path: D:\Program Files (x86)\SolarWinds\Orion\SolarWinds.InformationService.ServiceV3.exe Faulting module path: C:\Windows\Microsoft\.NET\Framework64\v4.0.30319\clr.dll
Report Id: cde3cd1c-1797-45f5-804a-06e3493c619a
Faulting package full name:
Faulting package-relative application ID:


Note: Deleting a Orion (admin) user(s) may not take until SolarWinds Information Services (SWIS) or services are restarted.  Once the services is restarted, the unknown users error message will start to occur for deleted users in the past.

Product section

Orion Platform

Cause

This is a known issue in 2022.4 and resolved in 2022.4.1.

Resolution

Resolution 1:

  1. Review the Windows Application Event logs for the multiple Faulting Application messages for SolarWinds.InformationService.ServiceV3.exe.
Event Application logs:
Faulting application name: SolarWinds.InformationService.ServiceV3.exe, version: 2022.4.0.1179, time stamp: 0xc58bdec2
Faulting module name: clr.dll, version: 4.8.4515.0, time stamp: 0x624ce98e Exception code: 0xc00000fd Fault offset: 0x000000000001d8a3 Faulting process id: 0x4df0
Faulting application start time: 0x01d8fc2633b17abc
Faulting application path: D:\Program Files (x86)\SolarWinds\Orion\SolarWinds.InformationService.ServiceV3.exe Faulting module path: C:\Windows\Microsoft\.NET\Framework64\v4.0.30319\clr.dll
Report Id: cde3cd1c-1797-45f5-804a-06e3493c619a
Faulting package full name:
Faulting package-relative application ID:

To determine what username may be causing the issue, review the SolarWinds Information Services (Orion.InformationService.log.*) logs for recurring errors about a bad username. Sample error below: 
 


Note: Information Service may continue to crash without the following log message.  The recommendation is to upgrade from 2022.4 to later version.
  1. Check if the "USERNAME" is present in any of the following tables:
    • AlertConfigurations table (in the CreatedBy column), or
    • Maps_Projects table (in the AccountID column)
  2. Running the following SQL query:
-- find nonexisting accounts used in column CreatedBy in the table AlertConfigurations
SELECT CreatedBy FROM [dbo].[AlertConfigurations]
WHERE CreatedBy NOT IN (SELECT AccountID FROM [dbo].[Accounts]) AND CreatedBy IS NOT NULL AND CreatedBy <> 'NULL' AND CreatedBy <> ''
-- find nonexisting accounts used in column AccountID in the table Maps_Projects
SELECT AccountID FROM [dbo].[Maps_Projects]
WHERE AccountID NOT IN (SELECT AccountID FROM [dbo].[Accounts])
  1. Depending on the table where you found the affected username, you can run the script to clear the error. 
-- 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.


DECLARE @logins TABLE(login NVARCHAR(MAX));
INSERT @logins(login) VALUES ('USERNAME1'),('USERNAME2'); -- HERE replace names of conflicting account
DECLARE @orion_map_new_owner NVARCHAR(MAX) = 'NEWOWNER'; -- HERE replace NEWOWNER with existing account name

-- replacing (deleting) value in CreatedBy where is nonexisting account
UPDATE [dbo].[AlertConfigurations] SET CreatedBy = NULL WHERE CreatedBy IN (SELECT login FROM @logins)

-- changing owner of Map for non existing account(s) to existing account
DELETE from Maps_Projects where AccountID = "ConflictingAccount"
  1. Restart Orion services on the Main/ Active polling engine server. 
Find the account to use in the database statement:
If you cannot find the USERNAME account in the tables mentioned above you can use the following query:

SELECT CreatedBy FROM [dbo].[AlertConfigurations]
WHERE CreatedBy NOT IN (SELECT AccountID FROM [dbo].[Accounts]) AND CreatedBy IS NOT NULL AND CreatedBy <> 'NULL' AND CreatedBy <> ''

Resolution 2:


Some times you cannot see below Warning even you enable the DEBUG of Information Service.

WARN SolarWinds.Orion.Web.DAL.MembershipAccountDAL - (null) (null)     Unable to load settings for user "USERNAME"

 

But there are continues alerting service noises while SWIS is in DEBUG mode similar below

2022-11-23 17:59:45,602 [91] DEBUG SolarWinds.Data.SQL.SqlLogging - SolarWinds.Alerting.Service| SolarWinds.Alerting.Service.exe| SolarWinds.Orion.Core.Alerting.Plugins.Conditions.Swql.ConditionEvaluatorSwql.ExecuteQuery()| (null) SQL: SELECT Accounts.LimitationID1, Accounts.LimitationID2, Accounts.LimitationID3, P.SettingValue
FROM Accounts
LEFT JOIN WebUserSettings AS P ON Accounts.AccountID = P.AccountID AND P.SettingName = 'WPMRecordings.AllowRecordingsManagement'
WHERE Accounts.AccountID = @AccountID (, @AccountID=CN=SolarWinds-Orion; 026DFCD4490D050E1BD236942AB7048DD8EE309E)

 

Additional workaround below:

- Manually search any account in AlertConfiguration table on CreatedBy column
- Check with customer if account is no longer in use or an old account
- Manually change the account to NULL
- Restart the Orion Services