Overview
We need to change the failover behavior inside of High Availability to not automatically check as frequently as 32 seconds (default). This will allow us to define custom alerts with unique trigger conditions with alert actions to initiate a failover.
Currently, the default 32 second time in the UI has a max amount of 60 seconds. However, this can be changed in the database. These settings will persist through the Configuration Wizard but will not persist after an upgrade. This attached Application Template can be used to monitor these database values. If these values are not changed after an upgrade, this template will go into a warning state so someone will know to go change it back.
HA Configuration
The following query will show the two settings that need to be changed. The IntervalSuicideRule should be set slightly higher than the IntervalMemberDown value.
- IntervalMemberDown: Set to 900 seconds (15 minutes). This can be adjusted, this value is set as an example.
- IntervalSuicideRule: Set to 930 seconds (15 minutes 30 seconds). This can be adjusted, this value is set as an example.
SELECT DisplayName,PoolId,IntervalMemberDown,IntervalSuicideRule FROM [dbo].[HA_Pools]

To update these values, you can run the following query. Update the values as necessary. The PoolID is commented out in the example below. Running the query as-is will update ALL HA Pools with this setting. If you only need to change it on a specific pool, then uncomment the PoolID line and update the value with the respective ID.
UPDATE [dbo].[HA_Pools]
SET IntervalMemberDown = 900, IntervalSuicideRule = 930
--WHERE PoolId = 1
Application Configuration
The Template is set to check every 6 hours. After importing the Application Template, you will need to:
- Download Application Template attached to this post (must be logged into Thwack)
- Import it in the SolarWinds Web Console by navigating to Settings > All Settings > SAM Settings > Manage Templates
- Find the imported template, and edit it.
- Assign a credential for each component monitor that as access to the SolarWinds database
- If your SQL instance is running on a different port or is a named SQL instance, update each component monitor section accordingly.
- Assign template to a node in your environment, this will most likely be your primary Main Polling Engine
Legal
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.