Продолжительность задания

Microsoft.SQLServer.Windows.Monitor.AgentJob.Duration (UnitMonitor)

Отслеживает длительность задания агента.
Обратите внимание, что служба Windows "Агент SQL Server" не поддерживается ни в одном из выпусков SQL Server Express; отсутствует подходящий объект для обнаружения.

Knowledge Base article:

Сводка

Монитор продолжительности выполнения заданий для агента SQL. Отслеживает продолжительность выполнения заданий агента. Этот монитор изменяет состояние на критическое, если время выполнения последнего задания превышает критическое пороговое значение. Монитор изменяет состояние на "Предупреждение", если время выполнения последнего задания находится между пороговым значением предупреждения и критическим пороговым значением.

Переопределяемые параметры

Имя

Описание

Значение по умолчанию

Приоритет предупреждения

Определение приоритета оповещений.

Обычный

Серьезность предупреждения

Определяет серьезность предупреждения.

Ошибка

Критическое пороговое значение (мин)

Монитор изменит свое состояние на критическое, если значение превысит указанное пороговое значение. Если значение находится между этим пороговым значением и пороговым значением предупреждения (включительно), то монитор будет находиться в состоянии предупреждения.

120

Включено

Включает или отключает рабочий процесс.

Да

Создает предупреждения

Определяет, создается ли предупреждение рабочим процессом.

Да

Интервал (в секундах)

Повторяющийся интервал времени в секундах, в который следует запустить рабочий процесс.

600

Время синхронизации

Время синхронизации указывается в 24-часовом формате и может быть опущено.

 

Время ожидания (в секундах)

Указывает время, в течение которого может выполняться рабочий процесс, прежде чем он будет закрыт или завершится сбоем.

300

Время ожидания для подключения к базе данных (секунды)

Рабочий процесс завершится ошибкой и зарегистрирует событие, если он не сможет получить доступ к базе данных за указанный промежуток времени.

15

Пороговое значение предупреждения (мин)

Пороговое значение предупреждения. Превышение этого порогового значения приведет к переключению монитора по крайней мере в состояние предупреждения.

60

Element properties:

TargetMicrosoft.SQLServer.Windows.AgentJob
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.Windows.MonitorType.AgentJob.Duration
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL в Windows: критическая длительность задания агента
Выполнение задания агента "{0}" занимает слишком много времени.
Имя экземпляра: {1}
Имя компьютера: {2}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.Windows.Monitor.AgentJob.Duration" Accessibility="Public" Enabled="true" Target="SqlDiscW!Microsoft.SQLServer.Windows.AgentJob" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Windows.MonitorType.AgentJob.Duration" ConfirmDelivery="false">
<Category>PerformanceCollection</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Windows.Monitor.AgentJob.Duration.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.AgentJob"]/Name$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</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/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<InstanceName>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<MonitoringType>$Target/Host/Host/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<JobName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.AgentJob"]/Name$</JobName>
<Threshold1>60</Threshold1>
<Threshold2>120</Threshold2>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>600</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>