Source de données des propriétés de l'agent APM activé

Microsoft.SystemCenter.Apm.ActivatedApmAgentProperties.DS (DataSourceModuleType)

Element properties:

TypeDataSourceModuleType
IsolationAny
AccessibilityInternal
RunAsSystem.PrivilegedMonitoringAccount
OutputTypeSystem.Discovery.Data

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.TimedScript.DiscoveryProvider Default

Overrideable Parameters:

IDParameterTypeSelectorDisplay NameDescription
IntervalSecondsint$Config/IntervalSeconds$Intervalle en secondesIntervalle en secondes
TimeoutSecondsint$Config/TimeoutSeconds$Délai d'expiration (secondes)Délai d'expiration (secondes)

Source Code:

<DataSourceModuleType ID="Microsoft.SystemCenter.Apm.ActivatedApmAgentProperties.DS" Accessibility="Internal" Batching="false" RunAs="System!System.PrivilegedMonitoringAccount">
<Configuration>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="IntervalSeconds" type="xsd:integer"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="TimeoutSeconds" type="xsd:integer"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="HostComputerName" type="xsd:string"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="IntervalSeconds" Selector="$Config/IntervalSeconds$" ParameterType="int"/>
<OverrideableParameter ID="TimeoutSeconds" Selector="$Config/TimeoutSeconds$" ParameterType="int"/>
</OverrideableParameters>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.TimedScript.DiscoveryProvider">
<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>
<SyncTime/>
<ScriptName>ActivatedApmAgent.DS.vbs</ScriptName>
<Arguments>"$MPElement$" "$Target/Id$" "$Config/HostComputerName$"</Arguments>
<ScriptBody><Script>

Option Explicit

SetLocale("en-us")

Dim SourceID : SourceId = WScript.Arguments(0)
Dim ManagedEntityId : ManagedEntityId = WScript.Arguments(1)
Dim ComputerIdentity : ComputerIdentity = WScript.Arguments(2)

Dim oAPI : Set oAPI = CreateObject("MOM.ScriptAPI")
Dim oDiscoveryData : Set oDiscoveryData = oAPI.CreateDiscoveryData(0, SourceId, ManagedEntityId)

if IsServiceEnabled() Then
Dim oInst : Set oInst = oDiscoveryData.CreateClassInstance("$MPElement[Name='Microsoft.SystemCenter.Apm.ActivatedApmAgent']$")
Call oInst.AddProperty("$MPElement[Name='Windows!Microsoft.Windows.Computer']/PrincipalName$", ComputerIdentity)
Call oInst.AddProperty("$MPElement[Name='System!System.Entity']/DisplayName$", ComputerIdentity)

Call oDiscoveryData.AddInstance(oInst)
End If

Call oAPI.Return(oDiscoveryData)

Function IsServiceEnabled()
IsServiceEnabled = false
Dim WShell : Set WShell = CreateObject("wscript.shell")
Dim s : s = WShell.RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\System Center Management APM\Start")
if 4 &lt;&gt; s Then 'Service disabled state = 4
IsServiceEnabled = true
End If
End Function


</Script></ScriptBody>
<TimeoutSeconds>$Config/TimeoutSeconds$</TimeoutSeconds>
</DataSource>
</MemberModules>
<Composition>
<Node ID="DS"/>
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>System!System.Discovery.Data</OutputType>
</DataSourceModuleType>