다음을 통해 공유


Send-ServiceFabricReplicaHealthReport

Service Fabric 복제본에 상태 보고서를 보냅니다.

구문

Send-ServiceFabricReplicaHealthReport
    [-PartitionId] <Guid>
    -ReplicaId <Int64>
    -HealthState <HealthState>
    -SourceId <String>
    -HealthProperty <String>
    [-Description <String>]
    [-TimeToLiveSec <Int32>]
    [-RemoveWhenExpired]
    [-SequenceNumber <Int64>]
    [-Immediate]
    [-TimeoutSec <Int32>]
    [<CommonParameters>]
Send-ServiceFabricReplicaHealthReport
    [-PartitionId] <Guid>
    -InstanceId <Int64>
    -HealthState <HealthState>
    -SourceId <String>
    -HealthProperty <String>
    [-Description <String>]
    [-TimeToLiveSec <Int32>]
    [-RemoveWhenExpired]
    [-SequenceNumber <Int64>]
    [-Immediate]
    [-TimeoutSec <Int32>]
    [<CommonParameters>]

Description

Send-ServiceFabricReplicaHealthReport cmdlet은 Service Fabric 상태 비저장 서비스 인스턴스 또는 상태 저장 서비스 복제본에 대한 상태 보고서를 보냅니다.

상태 비국적 서비스 인스턴스 또는 상태 저장 서비스 복제본이 상태 저장 저장소에 이미 있어야 합니다. 존재하는지 확인하려면 Get-ServiceFabricReplicaHealth cmdlet을 사용하고 PartitionIdReplicaOrInstanceId 매개 변수를 지정합니다. 또는 Get-ServiceFabricPartitionHealth cmdlet을 PartitionId 매개 변수와 함께 사용한 다음 ReplicaHealthStates 섹션을 확인하여 복제본을 찾을 수 있습니다.

cmdlet은 Connect-ServiceFabricCluster cmdlet의 HealthReportSendIntervalInSec 매개 변수로 지정된 간격 후에 보고서를 보냅니다. 이 시간 동안 클러스터 연결을 활성 상태로 유지해야 합니다.

cmdlet은 성공을 반환할 수 있지만 보고서는 비동기적으로 전송되므로 처리가 실패할 수 있습니다. 보고서가 상태 저장소에 적용되었는지 확인하려면 Get-ServiceFabricReplicaHealth cmdlet을 사용하고 보고서가 상태 이벤트 섹션에 표시되는지 확인합니다.

Service Fabric 클러스터에서 작업을 수행하기 전에 Connect-ServiceFabricCluster cmdlet을 사용하여 클러스터에 대한 연결을 설정합니다.

예제

예제 1: 무한 TTL을 사용하여 상태 저장 서비스 복제본에 대한 오류 상태 보고서 보고

PS C:\> Send-ServiceFabricReplicaHealthReport -PartitionId 869dd2e9-fdda-42a5-ad96-4b71c795dfd3 -ReplicaId 130464806670632402 -SourceId "MyWatchdog" -HealthProperty "DiskUsage" -HealthState Error -Description "Disk is full"

이 명령은 원본 MyWatchDog에서 지정된 상태 저장 서비스 복제본에 대해 지정된 파티션에 대한 상태 보고서를 보냅니다. 상태 보고서에는 무한 TTL을 사용하여 오류 상태의 DiskUsage 상태 속성에 대한 정보가 포함되어 있습니다. 이 명령은 오류에 대한 설명도 제공합니다.

예제 2: 지정된 TTL에 유효한 상태 비 상태 상태 서비스 인스턴스에 대한 경고 상태 보고서를 보고하고 만료되면 제거합니다.

PS C:\> Send-ServiceFabricReplicaHealthReport -PartitionId 1a151ac7-9c25-4528-81fc-4c6bb9909394 -InstanceId 130464806670632403 -SourceId "MyWatchdog" -HealthProperty "Resources" -HealthState Warning -Description "Access to resources is temporarily disabled" -TimeToLiveSec 10 -RemoveWhenExpired

이 명령은 원본 MyWatchDog에서 지정된 상태 비지방 서비스 인스턴스에 대한 상태 보고서를 보냅니다. 상태 보고서에는 소스 MyWatchdog의 경고 상태 상태인 Resources 상태 속성에 대한 정보가 포함되어 있으며 10초 TTL이 포함됩니다. 만료 날짜에 제거를 위해 표시된 보고서입니다.

매개 변수

-Description

보고서를 트리거한 조건에 대한 사람이 읽을 수 있는 정보를 지정합니다. SourceId, HealthPropertyHealthState 매개 변수는 보고서를 완전히 설명합니다.

설명의 최대 문자열 길이는 4096자입니다. 제공된 문자열이 더 길면 자동으로 잘립니다. 잘린 경우 설명은 잘림이 발생했음을 사용자에게 나타내기 위해 "[Truncated]"라는 표식으로 끝납니다. 총 문자열 크기는 4096자이므로 원래 문자열에서 4096자 미만이 유지됩니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-HealthProperty

보고서의 속성을 지정합니다. 이 속성은 SourceId 매개 변수와 함께 보고서를 고유하게 식별합니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-HealthState

보고된 상태를 나타내는 HealthState 개체를 지정합니다.

형식:HealthState
허용되는 값:Invalid, Ok, Warning, Error, Unknown
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Immediate

보고서를 상태 저장소로 즉시 보낼지 여부를 지정합니다. 이는 가능한 한 빨리 전송해야 하는 중요한 보고서에 유용합니다. 지정하지 않으면 상태 클라이언트 설정에 따라 보고서가 전송됩니다. 따라서 HealthReportSendInterval 구성에 따라 일괄 처리됩니다. 상태 클라이언트가 상태 보고서 처리뿐만 아니라 상태 저장소에 대한 상태 보고 메시지를 최적화할 수 있으므로 이 설정을 사용하는 것이 좋습니다. 기본적으로 Powershell 패브릭 클라이언트는 HealthReportSentInterval을 0으로 설정하므로 보고서가 즉시 전송됩니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-InstanceId

상태 비정상 서비스 인스턴스 ID를 지정합니다. 인스턴스 ID는 상태 비스테이션 서비스에만 유효합니다. ReplicaId 대신 InstanceId 사용하는 상태 저장 복제본에 대한 보고서는 상태 클라이언트에서 허용되지만 상태 저장소에서 거부됩니다.

형식:Int64
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-PartitionId

Service Fabric 파티션의 ID를 지정합니다.

형식:Guid
Position:0
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-RemoveWhenExpired

보고서가 만료될 때 상태 저장소에서 제거됨을 나타냅니다. 이 매개 변수를 지정하지 않으면 보고서 TTL(Time to Live)이 만료될 때 엔터티가 오류 상태로 간주됩니다. 만료될 때 제거되는 보고서는 일정 기간 동안만 유효한 조건이나 Health Store에서 보고서를 지우는 데 사용할 수 있습니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-ReplicaId

상태 저장 서비스 복제본 ID를 지정합니다. 복제본 ID는 상태 저장 서비스에만 유효합니다. InstaceId 대신 ReplicaId 사용하는 상태 비 상태 비료 인스턴스에 대한 보고서는 상태 클라이언트에서 허용되지만 상태 저장소에서 거부됩니다.

형식:Int64
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-SequenceNumber

상태 보고서와 연결된 시퀀스 번호를 지정합니다. 이 매개 변수의 값을 지정하지 않으면 시퀀스 번호가 자동으로 설정됩니다. 시퀀스 번호를 지정하는 경우 해당 값은 동일한 SourceIdHealthProperty대해 동일한 엔터티에 설정된 이전 시퀀스 번호보다 높아야 합니다. 그렇지 않으면 부실로 인해 보고서가 거부됩니다.

형식:Int64
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-SourceId

보고서를 트리거한 원본의 식별자를 지정합니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-TimeoutSec

작업의 제한 시간(초)을 지정합니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-TimeToLiveSec

보고서의 TTL(Time to Live)을 초 단위로 지정합니다. TTL이 만료되면 RemoveWhenExpired 매개 변수가 지정된 경우 보고서가 상태 저장소에서 제거됩니다. 그렇지 않으면 엔터티가 만료된 보고서 때문에 오류 시 평가됩니다. 기본값은 Infinite입니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

입력

System.Guid

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