Dela via


Send-ServiceFabricServiceHealthReport

Skickar en hälsorapport för en Service Fabric-tjänst.

Syntax

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

Description

Cmdleten Send-ServiceFabricServiceHealthReport skickar en hälsorapport för en Service Fabric-tjänst.

Tjänsten bör redan finnas i hälsoarkivet. Om du vill kontrollera om den finns använder du cmdleten Get-ServiceFabricServiceHealth och anger parametern ServiceName . Du kan också använda cmdleten Get-ServiceFabricApplicationHealth för att hämta programinformationen och sedan kontrollera avsnittet tjänsthälsotillstånd för att hitta den tjänst du vill ha.

Rapporten skickas efter det antal sekunder som anges i parametern HealthReportSendIntervalInSec i cmdleten Connect-ServiceFabricCluster . Klusteranslutningen måste hållas vid liv under den här tiden.

Cmdleten kan returnera framgång, men rapporten skickas asynkront, så bearbetningen kan misslyckas. Om du vill se om rapporten har tillämpats i hälsoarkivet använder du cmdleten Get-ServiceFabricServiceHealth och kontrollerar att rapporten visas i avsnittet HealthEvents.

Innan du utför någon åtgärd i ett Service Fabric-kluster upprättar du en anslutning till klustret med hjälp av cmdleten Connect-ServiceFabricCluster .

Exempel

Exempel 1: Rapportera felhälsorapport med oändlig TTL

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

Det här kommandot skickar en hälsorapport för tjänsten med namnet fabric:/MyApplication/MyService från källan MyWatchDog. Hälsorapporten innehåller information om hälsoegenskapen Tillgänglighet i ett felhälsotillstånd, med oändlig TTL. Det här kommandot ger också en beskrivning av felet.

Exempel 2: Rapportvarningen är giltig för angiven TTL

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."

Det här kommandot skickar en hälsorapport för tjänsten med namnet fabric:/MyApplication/MyService från källan MyWatchdog. Hälsorapporten innehåller information om hälsoegenskapen PrivateData i ett varningstillstånd med 10 sekunders TTL och markerar rapporten för borttagning vid förfallodatum.

Parametrar

-Description

Anger läsbar information om det villkor som utlöste rapporten. Parametrarna SourceId, HealthProperty och HealthState beskriver rapporten fullständigt.

Den maximala stränglängden för beskrivningen är 4 096 tecken. Om den angivna strängen är längre trunkeras den automatiskt. När beskrivningen trunkeras avslutas den med en markör, "[Trunkerad]", för att indikera för användarna att trunkeringen inträffade. Den totala strängstorleken är 4 096 tecken, så mindre än 4 096 tecken från den ursprungliga strängen behålls.

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

-HealthProperty

Anger rapportens egenskap. Tillsammans med parametern SourceId identifierar den här egenskapen rapporten unikt.

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

-HealthState

Anger ett HealthState-objekt som representerar det rapporterade hälsotillståndet.

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

Anger om rapporten ska skickas till hälsoarkivet omedelbart. Detta är användbart för kritiska rapporter som ska skickas så snart som möjligt. Om det inte anges skickas rapporten baserat på hälsoklientinställningarna. Därför batchas den enligt konfigurationen HealthReportSendInterval. Det här är den rekommenderade inställningen eftersom den gör det möjligt för hälsoklienten att optimera hälsorapporteringsmeddelanden till hälsoarkivet samt bearbetning av hälsorapporter. Som standard anger Powershell Fabric-klienten HealthReportSentInterval till 0, så rapporter skickas omedelbart.

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

-RemoveWhenExpired

Anger att rapporten tas bort från hälsoarkivet när den upphör att gälla. Om du inte anger den här parametern anses entiteten vara i feltillstånd när rapporttiden upphör att gälla. De rapporter som tas bort när de har upphört att gälla kan användas för villkor som endast är giltiga under en tidsperiod eller för att rensa rapporter från Hälsoarkivet.

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

-SequenceNumber

Anger det sekvensnummer som är associerat med hälsorapporten. Om du inte anger något värde för den här parametern anges sekvensnumret automatiskt. Om du anger ett sekvensnummer måste det värdet vara högre än något tidigare sekvensnummer som angetts för samma SourceId och HealthProperty, eller så avvisas rapporten på grund av inaktuellhet.

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

-ServiceName

Anger URI (Uniform Resource Identifier) för en Service Fabric-tjänst.

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

-SourceId

Anger identifieraren för källan som utlöste rapporten.

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

-TimeoutSec

Anger tidsgränsen i sekunder för åtgärden.

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

-TimeToLiveSec

Anger TTL (Time to Live) för rapporten i sekunder. När TTL upphör att gälla tas rapporten bort från hälsoarkivet om parametern RemoveWhenExpired har angetts . Annars utvärderas entiteten vid Fel på grund av den utgångna rapporten. Standardvärdet är Infinite.

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

Indata

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]]

Utdata

System.Object