Verificação da Configuração do Servidor HTTP do Apache

Microsoft.ApacheHTTPServer.ManagedServer.Unix.ConfigurationCheck.Monitor (UnitMonitor)

Esta monitorização executa um script para verificar a configuração do Apache e alerta se forem encontrados avisos ou erros na configuração.

Knowledge Base article:

Resumo

Existe um problema de configuração com os ficheiros de configuração do Servidor HTTP do Apache. O servidor pode não iniciar corretamente se for reiniciado. Esta monitorização executa o programa httpd ou apache2ctl com a opção –t para validar a configuração. É definido um estado de erro ou aviso se o programa encontrar um problema com a configuração.

Causas

A configuração (em httpd.conf ou num ficheiro incluído) está incorreta. Consulte a mensagem de alerta e contexto para detalhes do problema de configuração.

Resoluções

Resolva o problema de configuração que foi declarado.

Element properties:

TargetMicrosoft.ApacheHTTPServer.ManagedServer.Unix
Parent MonitorSystem.Health.ConfigurationState
CategoryConfigurationHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Oss.ShellScript.Status.ThreeState.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Configuração do Servidor HTTP do Apache
A configuração do Servidor HTTP do Apache não está correta. Veja o contexto do alerta para consultar os avisos ou erros. Resultados: {0} {1}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.ApacheHTTPServer.ManagedServer.Unix.ConfigurationCheck.Monitor" Accessibility="Public" Target="Microsoft.ApacheHTTPServer.ManagedServer.Unix" TypeID="Oss!Microsoft.Oss.ShellScript.Status.ThreeState.MonitorType" ParentMonitorID="Health!System.Health.ConfigurationState" Enabled="onStandardMonitoring">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.ApacheHTTPServer.ManagedServer.Unix.ConfigurationCheck.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context///*[local-name()="StdOut"]$</AlertParameter1>
<AlertParameter2>$Data/Context///*[local-name()="StdErr"]$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState HealthState="Success" MonitorTypeStateID="StatusOK" ID="StatusOK"/>
<OperationalState HealthState="Warning" MonitorTypeStateID="StatusWarning" ID="StatusWarning"/>
<OperationalState HealthState="Error" MonitorTypeStateID="StatusError" ID="StatusError"/>
</OperationalStates>
<Configuration>
<Interval>14400</Interval>
<TargetSystem>$Target/Host/Property[Type="Unix!Microsoft.Unix.Computer"]/NetworkName$</TargetSystem>
<Script>
#!/bin/bash

if [ -x "/usr/sbin/apache2ctl" ]
then
result=`/usr/sbin/apache2ctl -t `
fi

if [ -x "/usr/sbin/httpd" ]
then
result=`/usr/sbin/httpd -t `
fi

if [ -x "/usr/local/apache2/bin/apachectl" ]
then
result=`/usr/local/apache2/bin/apachectl -t `
fi

printf "$result"
exit 0</Script>
<ScriptArgs/>
<Timeout>120</Timeout>
<UserName>$RunAs[Name="Unix!Microsoft.Unix.ActionAccount"]/UserName$</UserName>
<Password>$RunAs[Name="Unix!Microsoft.Unix.ActionAccount"]/Password$</Password>
<WarningStatus>[w|W]arn</WarningStatus>
<ErrorStatus>Syntax [E|e]rr</ErrorStatus>
</Configuration>
</UnitMonitor>