For the DBSS - Page Splits rule the following configuration is present:
The alarm is invoked when the rate per second of page splits per Batch Executions within a SQL Server instance exceeds a predefined threshold.
Page Splits. The average number of page splits per Batch Executions, @value, is greater than or equal to the page splits threshold, which is @threshold.
if(sqlBatchesValue > 0) { condition = (sqlBatchesValue / #page_splits# >= registry("DBSS-OperationalPageSplits_Low"));
Defect.
WORKAROUND
1. Go to the warning condition of the "DBSS - Page Splits" rule in rules management dashboard.
2. Back up the original warning condition.
3. Replace the warning condition with the following:
import java.util.UUID;
ds = server.get("DataService");
condition = false;
instance = scope.parent_node;
if(instance != null) {
statistics = instance.statistics;
if(statistics != null) {
sqlBatches = ds.retrieveLatestValue(statistics, "sql_batches").getValue();
if(sqlBatches != null) {
sqlBatchesValue = sqlBatches.avg;
if(sqlBatchesValue > 0) {
condition = (#page_splits# / sqlBatchesValue >= registry("DBSS-OperationalPageSplits_Low"));
}
}
}
}
return Dbwc_Common_SQL_Server_IsNeedToSendAlarm(scope, "DBSS - Page Splits", "2", condition);
4. Click "Save all" to apply changes.
5. Navigate to the "Rule Variables" tab and locate to the "value" variable.
6. Backup the original "Expression/Message" of the "value" variable.
7. Replace with the following content:
import java.util.UUID;
value = 0;
ds = server.get("DataService");
instance = scope.parent_node;
if(instance != null) {
statistics = instance.statistics;
if(statistics != null) {
sqlBatches = ds.retrieveLatestValue(statistics, "sql_batches").getValue();
if(sqlBatches != null) {
sqlBatchesValue = sqlBatches.avg;
if(sqlBatchesValue > 0) {
value = #page_splits# / sqlBatchesValue;
}
}
}
}
8. Click the "Add" button to replace the existing variable.
STATUS
This issue has been logged as defect FOG-6178 and has been fixed in the 7.1.0.10 and higher releases of the Foglight for SQL Server cartridge.