Esegue il monitoraggio della connessione tra endpoint Web SPF e database SPF.
Esegue il monitoraggio della connettività dai server Web SPF. A tale scopo, viene effettuata periodicamente una connessione di test al database Service Provider Foundation.
Per funzionare correttamente, il monitoraggio deve disporre dell'autorizzazione per leggere il database di Service Management Automation. Creare un account RunAs che dispone delle autorizzazioni di lettura per il database e aggiungerlo al profilo RunAs denominato Account di database di Microsoft Service Provider Foundation.
Per questo monitoraggio è possibile configurare le opzioni seguenti:
Opzione | Definizione | Impostazione predefinita |
Avviso di stato | Stato di integrità per il monitoraggio che genera un avviso. | Il monitoraggio è in uno stato di integrità critico. |
Priorità avviso | Priorità dell'avviso generato per questo monitoraggio. | Alta |
Gravità avviso | Priorità dell'avviso generato per questo monitoraggio. | Critico |
Risoluzione automatica avviso | Specifica se l'avviso deve essere risolto automaticamente quando il monitoraggio torna a uno stato integro. | Vero |
Abilitata | Specifica se il monitoraggio deve essere eseguito. | Vero |
Genera avviso | Specifica se il monitoraggio deve generare un avviso quando passa a uno stato di avviso o critico. | Vero |
Intervallo | Numero di secondi tra due esecuzioni del monitoraggio. | 300 |
Se lo stato di questo monitoraggio è Errore, il database non è disponibile dal server oppure la sicurezza per il monitoraggio non è configurata correttamente. Per informazioni dettagliate sulla configurazione del monitoraggio, vedere la sezione Configurazione.
Se il monitoraggio è configurato correttamente e lo stato è Errore, il database è offline oppure il server di Service Reporting non riesce ad accedere al server di Service Provider Foundation.
Verificare lo stato del database di Service Provider Foundation e del server di database.
Target | Microsoft.SystemCenter.SPF.SpfServer | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SystemCenter.ServiceProviderFoundation.PowerShellModule.TwoStateMonitorType.PropertyBag | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Microsoft.SystemCenter.SPF.DatabaseAccount |
<UnitMonitor ID="Microsoft.SystemCenter.SPF.Monitor.SpfDatabaseScriptMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.SystemCenter.SPF.SpfServer" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter.ServiceProviderFoundation.PowerShellModule.TwoStateMonitorType.PropertyBag" ConfirmDelivery="false" RunAs="Microsoft.SystemCenter.SPF.DatabaseAccount">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.SPF.Monitor.SpfDatabaseScriptMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Success" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<ScriptName>HealthOfSqlServer.ps1</ScriptName>
<ScriptBody> $oAPI = new-object -comObject "MOM.ScriptAPI"
$propertyBag = $oAPI.CreatePropertyBag()
$errorActionSetting = $ErrorActionPreference
try
{
$ErrorActionPreference = "Stop"
Import-Module "$env:COMMONPROGRAMFILES\Microsoft System Center 2012 R2\Service Provider Foundation\Microsoft.SystemCenter.Foundation.Cmdlet.dll"
$stamps = Get-SCSPFStamp
$propertyBag.AddValue("Result", "Success")
}
catch
{
$propertyBag.AddValue("Result", "Error")
}
finally
{
$ErrorActionPreference = $errorActionSetting
$propertyBag
}
</ScriptBody>
<TimeoutSeconds>300</TimeoutSeconds>
<ErrorExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">Success</Value>
</ValueExpression>
</SimpleExpression>
</ErrorExpression>
<SuccessExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Success</Value>
</ValueExpression>
</SimpleExpression>
</SuccessExpression>
</Configuration>
</UnitMonitor>