Esegue il monitoraggio della connessione tra endpoint Web SPF e database SPF.
Esegue il monitoraggio della connettività del database dai server Web di SPF. Per eseguire questa operazione, viene effettuata periodicamente una connessione di test al database di Service Provider Foundation.
Se si verifica un errore nel monitor, il database non è disponibile dal server oppure la sicurezza per il monitor non è configurata correttamente. Per informazioni dettagliate sulla configurazione del monitor, vedere la sezione Configurazione.
Se il monitor è configurato correttamente ma si verifica un errore, il database è offline oppure il server di Service Provider Foundation non è in grado di accedere al server di database.
Verificare lo stato del database di Service Provider Foundation e del server di database.
Per funzionare correttamente il monitor 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.
In questo monitor è possibile configurare le opzioni seguenti:
Opzione | Definizione | Impostazioni predefinite |
Avviso stato | Stato di integrità per il monitoraggio che genera un avviso. | Il monitoraggio è in stato di integrità critico |
Priorità avviso | Priorità dell'avviso generato per il monitoraggio. | Alto |
Gravità avviso | Priorità dell'avviso generato per il monitoraggio. | Critica |
Risoluzione automatica avviso | Specifica se l'avviso deve essere risolto automaticamente quando il monitoraggio torna in uno stato integro. | Vero |
Abilitato | Specifica se il monitoraggio deve essere eseguito. | Vero |
Genera avviso | Specifica se il monitoraggio deve generare un avviso quando passa da uno stato di avviso a uno stato critico. | Vero |
Intervallo | Numero di secondi tra le esecuzioni del monitoraggio. | 300 |
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 | Internal | ||
Alert Message |
| ||
RunAs | Microsoft.SystemCenter.SPF.DatabaseAccount |
<UnitMonitor ID="Microsoft.SystemCenter.SPF.Monitor.SpfDatabaseScriptMonitor" Accessibility="Internal" 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>