SQL Server Blocking Processes
Proactively monitor and resolve SQL Server blocking issues with the Nodinite Database Monitoring Agent. This page explains how to detect, alert, and take action on blocking processes in your SQL Server environment.
✅ Get instant alerts when blocking occurs
✅ Automate remediation with remote actions
✅ Centralize monitoring and management of blocking processes
✅ Group and filter resources for rapid troubleshooting
The Database Monitoring Agent continuously monitors your SQL Instance(s) for blocking processes. When enabled, each monitored SQL Instance yields one Resource that the System Administrator can include in one or more Monitor Views. Users receive alerts using at least one of the built-in Alarm Plugins.
The Display name of the Resource is SQL Server blocked processes
. The SQL Blocking Resource is grouped by the Category name 'SQL Blocking'.
Here's an example of a Monitor View filtered by the 'SQL Blocking' Category.
graph LR subgraph "Configuration" c["fal:fa-code SQL Blocking / Instance"] --> r[fal:fa-lightbulb 1 Resource] end
Each configuration is manifested as a Resource.
What are the key features of Monitoring Blocking processes?
- State Evaluation – Monitors and evaluates the current state to ensure no process blocks another longer than the allowed duration.
- Actions – Support for the execution of Remote Actions
What is evaluated for SQL Server Blocking?
The different possible evaluated states for your SQL Blocking are provided in the table below:
State | Status | Description | Actions | |
---|---|---|---|---|
Unavailable | Resource not available | Evaluation of the 'SQL Instance' is not possible either due to network or security-related problems | Review prerequisites Global Configuration | |
Error | Error state raised | At least one process has been blocked longer than the allowed Error duration | Edit configuration Terminate running process Terminate blocked by | |
Warning | Warning threshold is breached | At least one process has been blocked longer than the allowed Warning duration | Edit configuration Terminate running process Terminate blocked by | |
OK | Online | The SQL Server instance is online, operational and accessible. No blocking processes according to the Monitoring thresholds | Edit configuration |
Tip
The System Administrator can override the Monitoring state using the Expected State feature on the Resource within Nodinite.
Global Configuration
To manage the blocking process feature, click on the Advanced tab in the Remote Configuration.
Example of the Advanced tab for blocking process configuration.
- SQL Blocking - Enabled – When checked, monitoring for Blocking is enabled
- SQL Blocking - Duration Warning – The longest allowed duration for SQL Blocking in seconds before a Warning is raised
- SQL Blocking - Duration Error – The longest allowed duration for SQL Blocking in seconds before an Error is raised
Actions
The Database Monitoring Agent supports remote actions. The following Actions are available:
- List blocked processes
- Edit thresholds
Example of available actions for blocking processes.
List blocked processes
You can view the blocking processes by clicking the 'List Blocked Processes' menu item in the Actions button.
Example of listing blocked processes.
The list of blocking processes is shown in a table on the screen.
Example of the blocking processes table.
You can Terminate either the process being blocked or the process causing the block.
Example of terminating actions for blocked processes.
Terminate the running process
To terminate the running process, click the 'Terminate the running process' menu item of the Actions button.
Example of terminating the running process.
Next, a modal appears to allow the User in the Nodinite Web Client to confirm the intent to proceed with the operation.
Example of the confirmation modal for terminating the running process.
Whether successful or not, a message appears to inform about the result.
Example of the outcome after terminating the running process.
Terminate the blocked by process
To terminate the blocked by process, click the 'Terminate the blocked by process' menu item of the Actions button.
Example of terminating the blocked by process.
Next, a modal appears to allow the User in the Nodinite Web Client to confirm the intent to proceed with the operation.
Example of the confirmation modal for terminating the blocked by process.
Whether successful or not, a message appears to inform about the result.
Example of the outcome after terminating the blocked by process.
Edit Thresholds
You can Edit the Monitoring thresholds for blocking SQL Server Processes. Click the Edit Thresholds menu item of the Actions button.
Example of the Edit Thresholds menu item.
A modal opens where the User may tweak the duration in seconds threshold, triggering the Error or Warning state.
Example of the Edit Thresholds modal.
Click the Save button to persist changes.
Troubleshooting
If you want to play with this feature, you can run the following query in two separate windows in SSMS. The script causes the first session to acquire a lock, causing the second session to be blocked by the running process.
BEGIN TRANSACTION;
EXEC sp_getapplock @resource = 'Nodinite', @LockMode = 'Exclusive';
WAITFOR DELAY '00:13:37';
EXEC sp_releaseapplock @resource = 'Nodinite';
COMMIT TRANSACTION;
Next Step
Related Topics
Azure - SQL Size Checks
Database Monitoring Agent
Monitoring Agents
Monitor Views
Resources
SQL Categories