Compartilhar via


Send-ServiceFabricServiceHealthReport

Envia um relatório de integridade em um serviço do Service Fabric.

Syntax

Send-ServiceFabricServiceHealthReport
    [-ServiceName] <Uri>
    -HealthState <HealthState>
    -SourceId <String>
    -HealthProperty <String>
    [-Description <String>]
    [-TimeToLiveSec <Int32>]
    [-RemoveWhenExpired]
    [-SequenceNumber <Int64>]
    [-Immediate]
    [-TimeoutSec <Int32>]
    [<CommonParameters>]

Description

O cmdlet Send-ServiceFabricServiceHealthReport envia um relatório de integridade em um serviço do Service Fabric.

O serviço já deve existir no repositório de integridade. Para verificar se ele existe, use o cmdlet Get-ServiceFabricServiceHealth e especifique o parâmetro ServiceName . Como alternativa, você pode usar o cmdlet Get-ServiceFabricApplicationHealth para obter as informações do aplicativo e, em seguida, verificar a seção de estados de integridade do serviço para localizar o serviço desejado.

O relatório é enviado após o número de segundos especificado no parâmetro HealthReportSendIntervalInSec do cmdlet Connect-ServiceFabricCluster . A conexão de cluster deve ser mantida viva durante esse tempo.

O cmdlet pode retornar êxito, mas o relatório é enviado de forma assíncrona, portanto, seu processamento pode falhar. Para ver se o relatório foi aplicado no repositório de integridade, use o cmdlet Get-ServiceFabricServiceHealth e verifique se o relatório aparece na seção HealthEvents.

Antes de executar qualquer operação em um cluster do Service Fabric, estabeleça uma conexão com o cluster usando o cmdlet Connect-ServiceFabricCluster .

Exemplos

Exemplo 1: relatório de integridade de erro de relatório com TTL infinito

PS C:\> Send-ServiceFabricServiceHealthReport -ServiceName fabric:/MyApplication/MyService -SourceId "MyWatchdog" -HealthProperty "Availability" -HealthState Error -Description "The service is not available."

Esse comando envia um relatório de integridade para o serviço chamado fabric:/MyApplication/MyService do MyWatchDog de origem. O relatório de integridade contém informações sobre a disponibilidade da propriedade de integridade em um estado de integridade de erro, com TTL infinito. Esse comando também fornece uma descrição para o erro.

Exemplo 2: Aviso de relatório válido para TTL especificado

PS C:\> Send-ServiceFabricServiceHealthReport -ServiceName fabric:/MyApplication/MyService -SourceId "MyWatchdog" -HealthProperty "PrivateData" -HealthState Warning -TimeToLiveSec 10 -RemoveWhenExpired -Description "Accessing private data in database MyServicePrivateData is slow."

Esse comando envia um relatório de integridade no serviço chamado fabric:/MyApplication/MyService do MyWatchdog de origem. O relatório de integridade contém informações sobre a propriedade de integridade PrivateData em um estado de integridade de aviso com TTL de 10 segundos e marca o relatório para remoção na expiração.

Parâmetros

-Description

Especifica informações legíveis humanas sobre a condição que disparou o relatório. Os parâmetros SourceId, HealthProperty e HealthState descrevem totalmente o relatório.

O tamanho máximo da cadeia de caracteres da descrição é de 4.096 caracteres. Se a cadeia de caracteres fornecida for mais longa, ela será truncada automaticamente. Quando truncada, a descrição termina com um marcador"[Truncado]", para indicar aos usuários que ocorreu truncamento. O tamanho total da cadeia de caracteres é de 4.096 caracteres, portanto, menos de 4.096 caracteres da cadeia de caracteres original são mantidos.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-HealthProperty

Especifica a propriedade do relatório. Junto com o parâmetro SourceId , essa propriedade identifica exclusivamente o relatório.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-HealthState

Especifica um objeto HealthState que representa o estado de integridade relatado.

Type:HealthState
Accepted values:Invalid, Ok, Warning, Error, Unknown
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Immediate

Especifica se o relatório deve ser enviado imediatamente ao repositório de integridade. Isso é útil para relatórios importantes que precisam ser enviados assim que possível. Se não for especificado, o relatório será enviado com base nas configurações do cliente de integridade. Portanto, ele será agrupado de acordo com a configuração de HealthReportSendInterval. Esta é a configuração recomendada, pois ela permite que o cliente de integridade otimize a integridade relatando mensagens para o repositório de integridade, bem como para o processamento de relatório de integridade. Por padrão, o cliente da malha do Powershell define HealthReportSentInterval como 0, portanto, os relatórios são enviados imediatamente.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RemoveWhenExpired

Indica que o relatório é removido do repositório de integridade quando expira. Se você não especificar esse parâmetro, a entidade será considerada no estado de erro quando o tempo de vida útil do relatório expirar. Os relatórios que são removidos quando expirados podem ser usados para condições válidas apenas por um período de tempo ou para limpar relatórios do Health Store.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SequenceNumber

Especifica o número da sequência associado ao relatório de integridade. Se você não especificar um valor para esse parâmetro, o número da sequência será definido automaticamente. Se você especificar um número de sequência, esse valor deverá ser maior do que qualquer número de sequência anterior definido no mesmo SourceId e HealthProperty, ou o relatório será rejeitado devido à desatualização.

Type:Int64
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ServiceName

Especifica o URI (Uniform Resource Identifier) de um serviço do Service Fabric.

Type:Uri
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SourceId

Especifica o identificador da origem que disparou o relatório.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-TimeoutSec

Especifica o período de tempo limite, em segundos, para a operação.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeToLiveSec

Especifica o TTL (Time to Live) do relatório em segundos. Quando o TTL expira, o relatório é removido do repositório de integridade se o parâmetro RemoveWhenExpired for especificado. Caso contrário, a entidade será avaliada em Erro devido ao relatório expirado. O valor padrão é Infinite.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Entradas

System.Uri

System.Fabric.Health.HealthState

System.String

System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

System.Management.Automation.SwitchParameter

System.Nullable`1[[System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

Saídas

System.Object