Applies to: SQL Server
Adds or changes warning threshold for a specified mirroring performance metric.
Transact-SQL syntax conventions
sp_dbmmonitorchangealert database_name , alert_id , alert_threshold , enabled
Specifies the database for which to add or change the specified warning threshold.
An integer value that identifies the warning to be added or changed. Specify one of the following values:
|Value||Performance metric||Warning threshold|
|1||Oldest unsent transaction||Specifies the number of minutes worth of transactions that can accumulate in the send queue before a warning is generated on the principal server instance. This warning helps measure the potential for data loss in terms of time, and it is particularly relevant for high-performance mode. However, the warning is also relevant for high-safety mode when mirroring is paused or suspended because the partners become disconnected.|
|2||Unsent log||Specifies how many kilobytes (KB) of unsent log generate a warning on the principal server instance. This warning helps measure the potential for data loss in terms of KB, and it is particularly relevant for high-performance mode. However, the warning is also relevant for high-safety mode when mirroring is paused or suspended because the partners become disconnected.|
|3||Unrestored log||Specifies how many KB of unrestored log generate a warning on the mirror server instance. This warning helps measure failover time. Failover time consists mainly of the time that the former mirror server requires to roll forward any log remaining in its redo queue, plus a short additional time.|
|4||Mirror commit overhead||Specifies the number of milliseconds of average delay per transaction that are tolerated before a warning is generated on the principal server. This delay is the amount of overhead incurred while the principal server instance waits for the mirror server instance to write the transaction's log record into the redo queue. This value is relevant only in high-safety mode.|
|5||Retention period||Metadata that controls how long rows in the database mirroring status table are preserved.|
For information about the event IDs corresponding to the warnings, see Use Warning Thresholds and Alerts on Mirroring Performance Metrics (SQL Server).
The threshold value for the warning. If a value above this threshold is returned when the mirroring status is updated, an entry is entered into the Windows event log. This value represents KB, minutes, or milliseconds, depending on the performance metric.
To view the current values, run the sp_dbmmonitorresults stored procedure.
Is the warning enabled?
0 = Warning is disabled.
1 = Warning is enabled.
Retention period is always enabled.
Return Code Values
Requires membership in the sysadmin fixed server role.
The following example sets thresholds for each of the performance metrics and the retention period for the
AdventureWorks2019 database. The following table shows the values used in the example.
|alert_id||Performance metric||Warning threshold||Is the warning enabled?|
|1||Oldest unsent transaction||30 minutes||Yes|
|2||Unsent log||10,000 KB||Yes|
|3||Unrestored log||10,000 KB||Yes|
|4||Mirror commit overhead||1,000 milliseconds||No|
|5||Retention period||8 hours||Yes|
EXEC sp_dbmmonitorchangealert AdventureWorks2012, 1, 30, 1 ; EXEC sp_dbmmonitorchangealert AdventureWorks2012, 2, 10000, 1 ; EXEC sp_dbmmonitorchangealert AdventureWorks2012, 3, 10000, 1 ; EXEC sp_dbmmonitorchangealert AdventureWorks2012, 4, 1000, 0 ; EXEC sp_dbmmonitorchangealert AdventureWorks2012, 5, 8, 1 ;
Monitoring Database Mirroring (SQL Server)