Windows Server 2008 内置 FTP 站点状态监视器类型

Microsoft.Windows.InternetInformationServices.CheckLegacyFTPSiteState (UnitMonitorType)

Element properties:

RunAsSystem.PrivilegedMonitoringAccount
AccessibilityInternal
Support Monitor RecalculateTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.Server.IIS.IISLegacyStateDataSource.2008 Default
FTPSiteStateProbe ProbeAction Microsoft.Windows.Server.IIS.IISLegacyStateProbe.2008 Default
FilterStarted ConditionDetection System.ExpressionFilter Default
FilterStopped ConditionDetection System.ExpressionFilter Default

Overrideable Parameters:

IDParameterTypeSelectorDisplay NameDescription
PeriodInSecondsint$Config/PeriodInSeconds$间隔(秒)

Source Code:

<UnitMonitorType ID="Microsoft.Windows.InternetInformationServices.CheckLegacyFTPSiteState" Accessibility="Internal" RunAs="System!System.PrivilegedMonitoringAccount">
<MonitorTypeStates>
<MonitorTypeState ID="Started" NoDetection="false"/>
<MonitorTypeState ID="Stopped" NoDetection="false"/>
</MonitorTypeStates>
<Configuration>
<IncludeSchemaTypes>
<SchemaType>System!System.ExpressionEvaluatorSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element minOccurs="1" name="PeriodInSeconds" type="xsd:integer"/>
<xsd:element minOccurs="1" name="SiteID" type="xsd:string"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="PeriodInSeconds" Selector="$Config/PeriodInSeconds$" ParameterType="int"/>
</OverrideableParameters>
<MonitorImplementation>
<MemberModules>
<DataSource ID="DS" TypeID="Microsoft.Windows.Server.IIS.IISLegacyStateDataSource.2008">
<PeriodInSeconds>$Config/PeriodInSeconds$</PeriodInSeconds>
<Type>2</Type>
</DataSource>
<ProbeAction ID="FTPSiteStateProbe" TypeID="Microsoft.Windows.Server.IIS.IISLegacyStateProbe.2008">
<Type>2</Type>
</ProbeAction>
<ConditionDetection ID="FilterStarted" TypeID="System!System.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">Property[@Name='$Config/SiteID$']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">2</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</ConditionDetection>
<ConditionDetection ID="FilterStopped" TypeID="System!System.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">Property[@Name='$Config/SiteID$']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">2</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="Started">
<Node ID="FilterStarted">
<Node ID="DS"/>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="Stopped">
<Node ID="FilterStopped">
<Node ID="DS"/>
</Node>
</RegularDetection>
</RegularDetections>
<OnDemandDetections>
<OnDemandDetection MonitorTypeStateID="Started">
<Node ID="FilterStarted">
<Node ID="FTPSiteStateProbe"/>
</Node>
</OnDemandDetection>
<OnDemandDetection MonitorTypeStateID="Stopped">
<Node ID="FilterStopped">
<Node ID="FTPSiteStateProbe"/>
</Node>
</OnDemandDetection>
</OnDemandDetections>
</MonitorImplementation>
</UnitMonitorType>