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 status för tjänstens hälsotillstånd för att hitta den tjänst du vill ha.

Rapporten skickas efter det antal sekunder som anges i parametern HealthReportSendIntervalInSec i parametern Connect-ServiceFabricCluster cmdlet. 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 feltillstå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, HealthPropertyoch 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.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-HealthProperty

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

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-HealthState

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

Typ:HealthState
Godkända värden:Invalid, Ok, Warning, Error, Unknown
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken: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 den 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.

Typ:SwitchParameter
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken: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 för live 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.

Typ:SwitchParameter
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken: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 på samma SourceId och HealthProperty, eller så avvisas rapporten på grund av inaktuellhet.

Typ:Int64
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-ServiceName

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

Typ:Uri
Position:0
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-SourceId

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

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-TimeoutSec

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

Typ:Int32
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken: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 anges. I annat fall utvärderas entiteten vid Fel på grund av att rapporten har upphört att gälla. Standardvärdet är Oändligt.

Typ:Int32
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken: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