Send-ServiceFabricApplicationHealthReport

在 Service Fabric 應用程式上傳送健康情況報告。

Syntax

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

Description

Send-ServiceFabricApplicationHealthReport Cmdlet 會在 Service Fabric 應用程式上傳送健康情況報告。

應用程式必須已存在於健康狀態存放區中。 若要檢查它是否存在,請使用 Get-ServiceFabricApplicationHealth Cmdlet。

Cmdlet 會在Connect-ServiceFabricCluster Cmdlet 的HealthReportSendIntervalInSec參數所指定的間隔之後傳送報告。 叢集連線必須在這段期間保持運作。 此 Cmdlet 會以非同步方式傳送報表,因此此 Cmdlet 可能會傳送成功值,即使處理失敗也一般。 例如,如果刪除實體,或因為不正確參數,例如過時的序號,健康狀態存放區可能會拒絕報告。

若要查看是否已在健康狀態存放區中套用報表,請使用 Get-ServiceFabricApplicationHealth Cmdlet,並檢查報告是否出現在 HealthEvents 區 段中。

若要管理 Service Fabric 叢集,請使用 [以系統管理員身分執行] 選項啟動Windows PowerShell。 在 Service Fabric 叢集上執行任何作業之前,請先使用 Connect-ServiceFabricCluster Cmdlet 和 Get-ServiceFabricClusterConnection Cmdlet 建立叢集的連線。

範例

範例 1:報告具有無限 TTL 的錯誤健康情況報告

PS C:\> Send-ServiceFabricApplicationHealthReport -ApplicationName fabric:/MyApplication -SourceId "MyWatchdog" -HealthProperty "Availability" -HealthState Error

此命令會從來源 MyWatchDog 傳送名為 fabric:/MyApplication 的應用程式健康情況報告。 健康情況報告包含健全狀況屬性 可用性 在錯誤健全狀況狀態中的資訊,具有無限的 TTL。

範例 2:報告警告對指定的 TTL 有效

PS C:\> Send-ServiceFabricApplicationHealthReport -ApplicationName fabric:/MyApplication -SourceId "MyWatchdog" -HealthProperty "Availability" -HealthState Warning -TimeToLiveSec 10 -RemoveWhenExpired

此命令會從來源 MyWatchDog 傳送名為 fabric:/MyApplication 的應用程式健康情況報告。 健康情況報告包含健康情況屬性 可用性 在警告健全狀況狀態的相關資訊。 報告會停留在健康狀態存放區 10 秒,之後會自動移除。

參數

-ApplicationName

指定 Service Fabric 應用程式的統一資源識別項 (URI) 。 Cmdlet 會傳送有關具有您所指定 URI 之應用程式的健康情況報告。

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

-Description

指定有關觸發報表之條件的人類可讀資訊。 SourceIdHealthPropertyHealthState參數會完整描述報告。

描述的字串長度上限為 4096 個字元。 如果提供的字串較長,則會自動截斷。 截斷時,描述會以標記 「[Truncated]」 結尾,以向使用者指出發生截斷。 字串大小總計為 4096 個字元,因此會保留原始字串中的少於 4096 個字元。

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

-HealthProperty

指定報表的 屬性。 此屬性與 SourceId 參數一起唯一識別報表。 此報表會覆寫相同實體上 SourceIdHealthProperty 參數具有相同值的任何先前報告。

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

-HealthState

指定代表報告健全狀況狀態的 HealthState 物件。

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

指定是否應該立即將報告傳送至健康狀態存放區。 這對於應該儘快傳送的重要報告來說,相當有用。 如果未指定,則會根據健康情況用戶端設定傳送報告。 因此,會根據 HealthReportSendInterval 設定進行批次處理。 這是建議的設定,因為這除了可讓健康情況用戶端將健康情況報告處理最佳化之外,也可將傳送給健康狀態資料存放區的健康情況報告訊息最佳化。 根據預設,Powershell 網狀架構用戶端會將 HealthReportSentInterval 設定為 0,因此會立即傳送報告。

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

-RemoveWhenExpired

指出報表在過期時會從健康狀態存放區中移除。 如果您未指定此參數,當報表存留時間到期時,實體會被視為處於錯誤狀態。 過期時移除的報告可用於僅有效一段時間的條件,或從 Health Store 清除報告。

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

-SequenceNumber

指定與健康情況報告相關聯的序號。 如果您未指定此參數的值,則會自動設定序號。 如果您指定序號,該值必須高於相同 SourceIdHealthProperty上設定的任何先前序號,或報表因為過期而遭到拒絕。

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

-SourceId

指定觸發報表的來源識別碼。

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

-TimeoutSec

指定作業的逾時期間,以秒為單位。

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

-TimeToLiveSec

指定報表的存留時間 (TTL) ,以秒為單位。 當 TTL 到期時,如果指定 RemoveWhenExpired 參數,則會從健康狀態存放區中移除報告。 否則,實體會在錯誤時評估,因為報告已過期。 預設值為 Infinite。

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

輸入

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

輸出

System.Object