Отслеживает большие изменения свободного места в базе данных за установленное число периодов выборки.
Отслеживает большие изменения свободного места в базе данных за установленное число периодов выборки. Быстрые значительные изменения этого значения могут указывать на неполадки.
Неисправное состояние вызывается значительным изменением доступного места за установленное число периодов выборки. Это может быть обусловлено следующими причинами:
большое значение параметра автоматического увеличения для файла с разрешенным автоматическим увеличением;
быстро увеличивающийся файл, который за небольшой период времени потребляет большой объем доступного места;
внешний объект или файл, который потребляет большой объем доступного места, находящегося на том же диске, что и этот файл.
Следующая ссылка позволяет просмотреть данные производительности: Данные производительности базы данных
Этот монитор охватывает место, доступное для каждого файла в файловой группе, в зависимости от конфигурации каждого файла:
Автоматическое увеличение не разрешено
Для файла без автоматического увеличения доступное место будет равно разности между начальным размером файла и используемым местом.
Автоматическое увеличение разрешено
В дополнение к разности между размером и используемым местом доступное место для файлов с разрешенным автоматическим увеличением будет равно минимуму из двух значений: разность между максимальным размером и размером файла или объем свободного места, оставшегося на диске.
При вычислениях доступного места нужно учитывать, что увеличить файл не удастся, если размер увеличения файла больше объема оставшегося на диске места, и что файл не может увеличиться, если разность между максимальным размером и текущим размером файла меньше значения увеличения. В таких ситуациях доступное свободное место, оставшееся на диске, не рассматривается как часть доступного места, поскольку файл больше не может увеличиваться.
Эта проблема может быть устранена следующим образом.
Уменьшение размера увеличения для файлов с разрешенным автоматическим увеличением
Изменение пороговых значений для этого монитора для обеспечения соответствия рабочей нагрузке
Либо, если процент изменения места не имеет значения для базы данных:
Отключите данный монитор для этой базы данных или для всех баз данных.
Target | Microsoft.SQLServer.2008.Database | ||
Parent Monitor | Microsoft.SQLServer.2008.Database.DBSpaceMonitor | ||
Category | PerformanceHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2008.DBPercentageChange | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2008.Database.DBSizePercentageChangeMonitor" Accessibility="Public" Enabled="false" Target="SQL2008Core!Microsoft.SQLServer.2008.Database" ParentMonitorID="Microsoft.SQLServer.2008.Database.DBSpaceMonitor" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2008.DBPercentageChange" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.Database.DBSizePercentageChangeMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderThreshold1" MonitorTypeStateID="UnderThreshold1" HealthState="Success"/>
<OperationalState ID="OverThreshold1UnderThreshold2" MonitorTypeStateID="OverThreshold1UnderThreshold2" HealthState="Warning"/>
<OperationalState ID="OverThreshold2" MonitorTypeStateID="OverThreshold2" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<ConnectionString>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ConnectionString$</ConnectionString>
<ServerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ServerName>
<SqlInstanceName>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</SqlInstanceName>
<ObjectName>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/PerformanceCounterObject$ : Database</ObjectName>
<CounterName>DB Total Free Space (%)</CounterName>
<InstanceName>$Data/Property[@Name='Database']$</InstanceName>
<DatabaseName>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</DatabaseName>
<Value>$Data/Property[@Name='DBFreeSpacePercent']$</Value>
<Threshold1>25</Threshold1>
<Threshold2>45</Threshold2>
<NumSamples>5</NumSamples>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>