Отслеживает значимое снижение свободного места в базе данных на протяжении нескольких периодов выборки. Примечание. По умолчанию этот монитор отключен. Чтобы включить его, при необходимости используйте переопределения.
Отслеживает значительное уменьшение свободного места в базе данных за установленное число периодов выборки. Быстрые значительные изменения этого значения могут указывать на наличие проблемы.
Неисправное состояние вызвано значительным изменением доступного места за установленное число периодов выборки. Это может быть обусловлено следующими причинами:
Большое значение параметра автоматического увеличения для файла с разрешенным автоматическим увеличением.
Быстро увеличивающийся файл, который за небольшой период времени использовал большой объем доступного места.
Внешний объект или файл, который использует большой объем доступного места на том же диске, что и этот файл
Следующая ссылка позволяет просмотреть данные о производительности: Данные о производительности базы данных
Этот монитор вычисляет доступное место для каждого файла в файловой группе в зависимости от конфигурации каждого файла:
Без автоматического увеличения
У файла без автоматического увеличения размера свободное место будет равно разности между первоначальным размером и занятым местом.
Автоматическое увеличение включено
В дополнение к разности между размером файла и занятым местом свободное место у файлов со включенным автоматическим увеличением будет равно меньшему из двух значений: разность между максимальным размером и размером файла и оставшийся объем свободного места на диске.
При расчете доступного пространства также необходимо принимать во внимание, что файл может не увеличиваться, если размер увеличения файла больше, чем свободное пространство на диске, кроме того, увеличение невозможно, если разница между максимальным и текущим размером файла меньше размера увеличения. В таких ситуациях свободное место на диске не включается в доступное пространство, так как дальнейшее увеличение файла невозможно.
Эта проблема может быть устранена следующим образом.:
Уменьшение размера увеличения для файлов с автоматическим увеличением
Изменение пороговых значений для этого монитора в соответствии с рабочей нагрузкой.
Либо, если процент изменения места не имеет значения для базы данных:
Отключите данный монитор для этой базы данных или для всех баз данных.
Имя | Описание | Значение по умолчанию |
Приоритет предупреждения | Определение приоритета оповещений. | Обычный |
Серьезность предупреждения | Определяет серьезность предупреждения. | MatchMonitorHealth |
Максимальный размер файла Azure (МБ) | Максимальный размер файла данных в хранилище BLOB-объектов Azure. Рабочий процесс будет рассматривать это значение как максимальный объем хранения каждого файла. | 1048576 |
Критическое пороговое значение | Монитор изменит свое состояние на критическое, если значение превысит указанное пороговое значение. Если значение находится между этим пороговым значением и пороговым значением предупреждения (включительно), то монитор будет находиться в состоянии предупреждения. | 45 |
Включено | Включает или отключает рабочий процесс. | Нет |
Создает предупреждения | Определяет, создается ли предупреждение рабочим процессом. | Да |
Интервал (в секундах) | Повторяющийся интервал времени в секундах, в который следует запустить рабочий процесс. | 900 |
Число выборок | Показывает, сколько раз измеряемое значение должно пересечь пороговое значение для того, чтобы состояние изменилось. | 5 |
Время синхронизации | Время синхронизации указывается в 24-часовом формате и может быть опущено. |
|
Время ожидания (в секундах) | Указывает время, в течение которого может выполняться рабочий процесс, прежде чем он будет закрыт или завершится сбоем. | 300 |
Порог "Предупреждение" | Пороговое значение предупреждения. Превышение этого порогового значения приведет к переключению монитора по крайней мере в состояние предупреждения. | 25 |
Target | Microsoft.SQLServer.Windows.Database | ||
Parent Monitor | Microsoft.SQLServer.Windows.Rollup.Database.DBSpace | ||
Category | PerformanceHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.Windows.MonitorType.Database.DBPercentageChange | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.Windows.Monitor.Database.RowsSizePercentageChange" Accessibility="Public" Enabled="false" Target="SqlDiscW!Microsoft.SQLServer.Windows.Database" ParentMonitorID="Microsoft.SQLServer.Windows.Rollup.Database.DBSpace" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Windows.MonitorType.Database.DBPercentageChange" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Windows.Monitor.Database.RowsSizePercentageChange.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.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>
<MachineName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<InstanceName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<DatabaseName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</DatabaseName>
<AzureMaxFileSizeMB>1048576</AzureMaxFileSizeMB>
<ObjectName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/PerformanceCounterObject$:TransactionLog</ObjectName>
<CounterName>DB Available Space Total (%)</CounterName>
<PerfInstanceName/>
<ValuePropertyName>DBFreeSpacePercent</ValuePropertyName>
<Threshold1>25</Threshold1>
<Threshold2>45</Threshold2>
<NumSamples>5</NumSamples>
<ConnectionString>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<MonitoringType>$Target/Host/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>