Monitora a conexão entre o ponto de extremidade Web da SPF e o banco de dados da SPF.
Monitora a conectividade do banco de dados a partir de servidores Web da SPF. Isso é realizado através de um teste periódico de conexão ao banco de dados da Service Provider Foundation.
Caso este monitor apresente um erro, isso significa que o banco de dados não está disponível a partir do servidor, ou que a segurança do monitor não está configurada corretamente. Consulte detalhes da configuração do monitor na seção Configuração.
Se o monitor estiver configurado corretamente e o monitor apresentar um erro, isso significa que o banco de dados está offline, ou que o servidor do banco de dados está inacessível para o servidor da Service Provider Foundation.
Verifique o status do banco de dados da Service Provider Foundation e do servidor do banco de dados.
Para que esse monitor funcione corretamente, é necessário que ele tenha permissão para ler o banco de dados de Automação de Gerenciamento de Serviços. Crie uma Conta Run As com permissões do banco de dados e adicione ela ao Perfil Run As chamado Conta de Banco de Dados da Microsoft Service Provider Foundation.
É possível configurar as seguintes opções neste monitor:
Opção | Definição | Padrão |
Estado de Alerta Ativo | Estado de integridade para o monitor que gera um alerta. | O monitor está em um estado de integridade crítico |
Prioridade do Alerta | Prioridade do alerta gerado para esse monitor. | Alto |
Severidade do Alerta | Prioridade do alerta gerado para esse monitor. | Crítica |
Alerta de Resolução Automática | Especifica se o alerta deve ser solucionado automaticamente quando o monitor retorna a um estado íntegro. | Verdadeiro |
Habilitado | Especifica se o monitor deve ser executado. | Verdadeiro |
Gera Alerta | Especifica se o monitor deve gerar um alerta ao mudar para um estado de aviso ou crítico. | Verdadeiro |
Intervalo | Número de segundos entre os momentos em que o monitor é executado. | 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>