Монитор отслеживает пространство, доступное во всех файлах журналов транзакций в базе данных и на соответствующих носителях. Объем доступного пространства на носителях, где размещены файлы журналов транзакций, включается в свободное пространство только в том случае, если хотя бы для одного из файлов журналов транзакций включено автоматическое увеличение. Этот монитор является монитором зависимости (сверткой).
Примечание. Этот монитор является монитором зависимости (сводным монитором). Состояние работоспособности для этого монитора определяется наилучшим состоянием любого монитора-члена. Пожалуйста, ознакомьтесь со статьей базы знаний о соответствующих базовых мониторах.
Монитор контролирует пространство, доступное во всех файлах журнала транзакций в базе данных и на соответствующих носителях. Объем свободного пространства на носителях, где размещены файлы, включается как часть доступного пространства только тогда, когда задействована настройка автоматического расширения хотя бы для одного файла. Этот монитор является монитором зависимости (сверткой).
Неисправное состояние вызвано недостатком свободного места во всех файлах журнала. Нехватка доступного места может быть вызвана следующими причинами:
неверные параметры конфигурации (размер, максимальный размер, автоматическое увеличение и т. д.);
нехватка оставшегося места на носителе.
отсутствие периодических резервных копий;
журнал не усекается.
Монитор отслеживает общее место, доступное для каждого файла журнала в базе данных, в зависимости от конфигурации каждого файла.:
Автоматическое увеличение не разрешено
Для файла без автоматического увеличения свободное место будет равно разности между размером файла и используемым местом (размером данных, которые хранятся в файле).
Автоматическое увеличение разрешено
При включенном автоматическом увеличении доступное место на диске рассматривается как часть общего свободного места. В дополнение к разности между размером файла и используемым местом свободное место для файлов со включенным автоматическим увеличением также включает свободное пространство на носителе (не превышающее разность между максимальным и текущим размером файла).
Малый объем доступного места для файлов базы данных с автоматическим увеличением может означать, что файл почти достиг предельного значения для логического диска, на котором он размещен. Для файлов с разрешенным автоматическим увеличением и заданным максимальным размером малый объем доступного места также может означать, что файл почти достиг максимального заданного размера.
При расчете доступного пространства также необходимо принимать во внимание, что файл может не увеличиваться, если шаг увеличения файла (в МБ или %) больше, чем свободное пространство на носителе. Та же логика применяется к файлам, расширение которых ограничено параметром максимального размера. В таких ситуациях свободное место на диске не включается в доступное пространство, так как дальнейшее увеличение файла невозможно.
Эта проблема может быть устранена следующим образом.:
Увеличение выделенного размера для файлов журнала, если автоматическое увеличение не разрешено
Увеличение значения максимального размера для файла журнала, если разрешено автоматическое увеличение
Включение автоматического расширения хотя бы для одного файла
Перемещение файлов журнала на другой диск с большим свободным местом, если ограниченно место для увеличения файлов
Регулярное выполнение резервного копирования файлов журнала для режимов восстановления FULL и BULK-LOGGED
Определение причины, почему журнал не усекается.:
Давно открытые выполняющиеся активные транзакции
Давно выполняющиеся операции резервного копирования
Реплицированная транзакция давно открыта (репликация транзакций)
Зеркальный сервер запаздывает относительно основного сервера (зеркальное отображение базы данных)
Изменение пороговых значений для соответствующего базового монитора, чтобы соответствовать требованиям нагрузки
В другом случае, если доступное место для файла журнала не имеет значения для базы данных:
Отключите данный монитор для этой базы данных или для всех баз данных.
См. электронную документацию по SQL Server: Архитектура файлов и файловых групп.
Название | Описание | Значение по умолчанию |
Приоритет предупреждения | Определяет приоритет предупреждения. | Обычные |
Серьезность предупреждения | Определяет серьезность предупреждения. | MatchMonitorHealth |
Включено | Включает или отключает рабочий процесс. | Да |
Создает предупреждения | Определяет, создает ли рабочий процесс предупреждения. | Да |
Target | Microsoft.SQLServer.2016.Database | ||
Parent Monitor | Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitor | ||
Algorithm | BestOf | ||
Source Monitor | Microsoft.SQLServer.2016.Monitoring.DBLogFileSpaceMonitor | ||
Relationship | Microsoft.SQLServer.2016.DBHostsLogFile | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
|
<DependencyMonitor ID="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitorRollUp" Accessibility="Public" Enabled="true" Target="SQL2016Core!Microsoft.SQLServer.2016.Database" ParentMonitorID="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitor" Remotable="true" Priority="Normal" RelationshipType="SQL2016Core!Microsoft.SQLServer.2016.DBHostsLogFile" MemberMonitor="Microsoft.SQLServer.2016.Monitoring.DBLogFileSpaceMonitor">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitorRollUp.AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<Algorithm>BestOf</Algorithm>
<MemberUnAvailable>Error</MemberUnAvailable>
</DependencyMonitor>