UNIX/Linux Log File (grep) (Alert)

AddOn.UnixLogFile.GREP.AlertRule.Template (Template)

Source Code:

<Template ID="AddOn.UnixLogFile.GREP.AlertRule.Template" Purpose="RuleCreation">
<Configuration>
<IncludeSchemaTypes>
<SchemaType>Health!System.Health.AlertSchema</SchemaType>
<SchemaType>RuleTemplates!Microsoft.SystemCenter.RuleTemplates.ManagementPackCategoryType</SchemaType>
<SchemaType>RuleTemplates!Microsoft.SystemCenter.RuleTemplates.ManagementPackIdentifiers</SchemaType>
</IncludeSchemaTypes>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ID" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Name" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Description" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Target" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="TargetSystem" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Category" type="ManagementPackCategoryType"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="LocaleId" type="ManagementPackLanguageIdentifier"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ErrorCode" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="LogFilePattern" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="TempFolder" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="UserName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Password" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Frequency" type="xsd:int"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Timeout" type="xsd:int"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Enabled" type="xsd:boolean"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Priority">
<xsd:simpleType>
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="0"/>
<xsd:maxInclusive value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Severity">
<xsd:simpleType>
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="0"/>
<xsd:maxInclusive value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AlertName" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AlertDescription" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AlertOwner" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AlertParameters" type="System.Health.AlertParameters" minOccurs="0" maxOccurs="1"/>
</Configuration>
<References>
<Reference ID="System"/>
<Reference ID="SC"/>
<Reference ID="SCDW"/>
<Reference ID="Health"/>
<Reference ID="Unix"/>
<Reference ID="Self"/>
</References>
<Implementation>
<Monitoring>
<Rules>
<Rule ID="$TemplateConfig/ID$" Target="$TemplateConfig/Target$" Enabled="$TemplateConfig/Enabled$">
<Category>$TemplateConfig/Category$</Category>
<DataSources>
<DataSource ID="InvokeDS" TypeID="$Reference/Self$AddOn.GREPDIFF.DS">
<TargetSystem>$TemplateConfig/TargetSystem$</TargetSystem>
<ErrorCode>$TemplateConfig/ErrorCode$</ErrorCode>
<LogFilePattern>$TemplateConfig/LogFilePattern$</LogFilePattern>
<TempFolder>$TemplateConfig/TempFolder$</TempFolder>
<UserName>$TemplateConfig/UserName$</UserName>
<Password>$TemplateConfig/Password$</Password>
<Frequency>$TemplateConfig/Frequency$</Frequency>
<Timeout>$TemplateConfig/Timeout$</Timeout>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="Alert" TypeID="$Reference/Health$System.Health.GenerateAlert">
<Priority>$TemplateConfig/Priority$</Priority>
<Severity>$TemplateConfig/Severity$</Severity>
<AlertName/>
<AlertDescription/>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="$TemplateConfig/ID$.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/Property[@Name='ErrorLogEntry']$</AlertParameter1>
</AlertParameters>
</WriteAction>
</WriteActions>
</Rule>
</Rules>
</Monitoring>
<Presentation>
<StringResources>
<StringResource ID="$TemplateConfig/ID$.AlertMessage"/>
</StringResources>
</Presentation>
<LanguagePacks>
<LanguagePack ID="$TemplateConfig/LocaleId$" IsDefault="true">
<DisplayStrings>
<DisplayString ElementID="$TemplateConfig/ID$">
<Name>$TemplateConfig/Name$</Name>
<Description>$TemplateConfig/Description$</Description>
</DisplayString>
<DisplayString ElementID="$TemplateConfig/ID$.AlertMessage">
<Name>$TemplateConfig/AlertName$</Name>
<Description>
LogFile Error Entry below in format [LogFile]:[LineNumber]:[Entry]

{0}
</Description>
</DisplayString>
</DisplayStrings>
</LanguagePack>
</LanguagePacks>
</Implementation>
</Template>