MSSQL 2016 : Détection de l'Agent SQL Server pour un moteur de base de données

Microsoft.SQLServer.2016.AgentDiscovery (Discovery)

Cette règle de détection permet de détecter l'Agent SQL Server pour une instance du moteur de base de données SQL Server 2016. Il ne peut y avoir qu'une instance de l'Agent SQL Server pour chaque instance du moteur de base de données.

Knowledge Base article:

Résumé

Cette règle de détection permet de détecter l'Agent SQL Server pour une instance du moteur de base de données SQL Server 2016. Il ne peut y avoir qu'une instance de l'Agent SQL Server pour chaque instance du moteur de base de données.

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

Active ou désactive le flux de travail.

Oui

Fréquence (en secondes)

L'intervalle de temps récurrent en secondes pendant lequel le workflow est exécuté.

14400

Element properties:

TargetMicrosoft.SQLServer.2016.DBEngine
EnabledTrue
Frequency14400
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.WmiProviderWithClassSnapshotDataMapper Microsoft.SQLServer.DiscoveryAccount

Source Code:

<Discovery ID="Microsoft.SQLServer.2016.AgentDiscovery" Target="Microsoft.SQLServer.2016.DBEngine" Enabled="true">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Microsoft.SQLServer.2016.Agent">
<Property TypeID="Microsoft.SQLServer.2016.Agent" PropertyID="ServiceName"/>
<Property TypeID="Microsoft.SQLServer.2016.Agent" PropertyID="Account"/>
<Property TypeID="Microsoft.SQLServer.2016.Agent" PropertyID="DisplayName"/>
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.WmiProviderWithClassSnapshotDataMapper" RunAs="GPMP!Microsoft.SQLServer.DiscoveryAccount">
<NameSpace>\\$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$\root\Microsoft\SqlServer\ComputerManagement13</NameSpace>
<Query>SELECT ServiceName, StartName, DisplayName FROM SqlService WHERE ServiceName="$Target/Property[Type="Microsoft.SQLServer.2016.DBEngine"]/AgentName$"</Query>
<Frequency>14400</Frequency>
<ClassId>$MPElement[Name="Microsoft.SQLServer.2016.Agent"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Name>
<Value>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</Name>
<Value>$Target/Property[Type="Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.SQLServer.2016.Agent"]/ServiceName$</Name>
<Value>$Data/Property[@Name='ServiceName']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.SQLServer.2016.Agent"]/Account$</Name>
<Value>$Data/Property[@Name='StartName']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.SQLServer.2016.Agent"]/DisplayName$</Name>
<Value>$Data/Property[@Name='DisplayName']$</Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>