HealthEvent v82

상태 관리자가 추가한 추가 메타데이터를 사용하여 클러스터, 애플리케이션 또는 노드와 같은 상태 엔터티에 보고된 상태 정보를 나타냅니다.

속성

속성 형식 필수
SourceId 문자열
Property 문자열
HealthState string(열거형)
TimeToLiveInMilliSeconds string(기간)
Description 문자열
SequenceNumber 문자열
RemoveWhenExpired boolean
HealthReportId 문자열
IsExpired boolean No
SourceUtcTimestamp string (date-time) 아니요
LastModifiedUtcTimestamp string (date-time) 아니요
LastOkTransitionAt string (date-time) 아니요
LastWarningTransitionAt string (date-time) 아니요
LastErrorTransitionAt string (date-time) 아니요

SourceId

형식: 문자열
필수: 예

상태 정보를 생성한 클라이언트/watchdog/시스템 구성 요소를 식별하는 원본 이름입니다.


Property

형식: 문자열
필수: 예

상태 정보의 속성입니다. 엔터티는 서로 다른 속성에 대한 상태 보고서를 가질 수 있습니다. 속성은 문자열이며 보고자 유연성에서 보고서를 트리거하는 상태 조건을 분류하도록 허용하는 고정된 열거형이 아닙니다. 예를 들어 SourceId "LocalWatchdog"가 있는 보고자는 노드에서 사용 가능한 디스크의 상태를 모니터링할 수 있으므로 해당 노드에서 "AvailableDisk" 속성을 보고할 수 있습니다. 동일한 보고자는 노드 연결을 모니터링할 수 있으므로 동일한 노드에서 "Connectivity" 속성을 보고할 수 있습니다. Health 스토어에서 이러한 보고서는 지정된 노드에 대한 별도의 상태 이벤트로 처리됩니다.

SourceId와 함께 속성은 상태 정보를 고유하게 식별합니다.


HealthState

형식: string(열거형)
필수: 예

클러스터, 노드, 애플리케이션, 서비스, 파티션, 복제본 등과 같은 Service Fabric 엔터티의 상태입니다.

가능한 값은 다음과 같습니다.

  • Invalid - 잘못된 상태를 나타냅니다. 모든 Service Fabric 열거형의 형식이 잘못되었습니다. 값은 0입니다.
  • Ok - 상태가 정상임을 나타냅니다. 값은 1입니다.
  • Warning - 상태가 경고 수준에 있음을 나타냅니다. 값은 2입니다.
  • Error - 상태가 오류 수준임을 나타냅니다. 오류 상태는 클러스터의 올바른 기능에 영향을 줄 수 있으므로 조사해야 합니다. 값이 3입니다.
  • Unknown- 알 수 없는 상태 상태 나타냅니다. 값은 65535입니다.

TimeToLiveInMilliSeconds

형식: 문자열(기간)
필수: 아니요

이 상태 보고서가 유효한 기간입니다. 이 필드는 기간을 지정하는 데 ISO8601 형식을 사용합니다. 클라이언트가 주기적으로 보고하는 경우 TTL(Time to Live)보다 높은 빈도로 보고서를 보내야 합니다. 클라이언트가 전환 시 보고하는 경우 TTL(Time to live)을 무한으로 설정할 수 있습니다. TTL(Time to live)이 만료되면 상태 정보를 포함하는 상태 이벤트는 RemoveWhenExpired가 true인 경우 Health 스토어에서 제거되거나 RemoveWhenExpired가 false인 경우 오류로 평가됩니다.

지정되지 않은 경우 TTL(Time to live)은 무한 값으로 기본 설정됩니다.


Description

형식: 문자열
필수: 아니요

상태 정보의 설명입니다. 보고서에 대한 사람이 읽을 수 있는 정보를 추가하는 데 사용되는 일반 텍스트를 나타냅니다. 설명의 최대 문자열 길이는 4096자입니다. 제공된 문자열이 긴 경우 자동으로 잘립니다. 잘린 경우 설명의 마지막 문자는 "[잘림]" 표식을 포함하고, 총 문자열 크기는 4096자입니다. 표식은 사용자에게 잘림이 발생했음을 나타냅니다. 잘린 경우 설명은 원래 문자열의 4096자보다 작은 문자를 갖습니다.


SequenceNumber

형식: 문자열
필수: 아니요

숫자 문자열의 이 상태 보고서에 대한 일련 번호입니다. 보고서 일련 번호는 Health 스토어에서 유효하지 않은 보고서를 검색하는 데 사용됩니다. 지정되지 않은 경우 일련 번호는 보고서가 추가될 때 상태 클라이언트에서 자동으로 생성됩니다.


RemoveWhenExpired

형식: 부울
필수: 아니요

보고서가 만료될 때 Health 스토어에서 제거할지 여부를 나타내는 값입니다. true로 설정된 경우 보고서는 만료된 후 Health 스토어에서 제거됩니다. false로 설정된 경우 보고서는 만료될 때 오류로 처리됩니다. 이 속성의 값은 기본적으로 false입니다. 클라이언트가 주기적으로 보고하는 경우 RemoveWhenExpired를 false(기본값)로 설정해야 합니다. 이렇게 하면 보고자에게 문제가 있고(예: 교착 상태) 보고할 수 없는 경우 상태 보고서가 만료될 때 엔터티가 오류로 평가됩니다. 엔터티를 오류 성능 상태에 있는 것으로 플래그 지정합니다.


HealthReportId

형식: 문자열
필수: 아니요

상태 보고서를 식별하고 aka.ms/sfhealthid 특정 상태 이벤트에 대한 자세한 정보를 찾는 데 사용할 수 있는 상태 보고서 ID입니다.


IsExpired

형식: 부울
필수: 아니요

상태 이벤트가 만료되면 true를 반환하고, 그렇지 않으면 false를 반환합니다.


SourceUtcTimestamp

형식: string(date-time)
필수: 아니요

원본에서 상태 보고서를 보낸 날짜 및 시간입니다.


LastModifiedUtcTimestamp

형식: string(date-time)
필수: 아니요

상태 보고서가 Health Store에서 마지막으로 수정한 날짜 및 시간입니다.


LastOkTransitionAt

형식: string(date-time)
필수: 아니요

현재 상태가 'Ok'인 경우 이 속성은 상태 보고서가 처음 '확인'으로 보고된 시간을 반환합니다. 주기적인 보고의 경우 상태가 동일한 많은 보고서가 생성되었을 수 있습니다. 이 속성은 첫 번째 '확인' 상태 보고서를 받은 날짜와 시간을 반환합니다.

현재 상태가 '오류' 또는 '경고'인 경우 다른 상태로 전환하기 전에 상태가 '확인'에서 마지막으로 발생한 날짜와 시간을 반환합니다.

상태 상태가 'Ok'가 아닌 경우 값은 0 날짜-시간이 됩니다.


LastWarningTransitionAt

형식: string(date-time)
필수: 아니요

현재 상태가 '경고'인 경우 이 속성은 상태 보고서가 '경고'로 처음 보고된 시간을 반환합니다. 주기적 보고의 경우 상태가 동일한 많은 보고서가 생성되었을 수 있지만 이 속성은 첫 번째 '경고' 상태 보고서가 수신된 날짜와 시간만 반환합니다.

현재 상태가 'Ok' 또는 'Error'인 경우 다른 상태로 전환하기 전에 상태가 '경고'에서 마지막으로 발생한 날짜와 시간을 반환합니다.

상태 상태가 '경고'가 아닌 경우 값은 날짜-시간이 0이 됩니다.


LastErrorTransitionAt

형식: string(date-time)
필수: 아니요

현재 상태가 'Error'인 경우 이 속성은 상태 보고서가 'Error'로 처음 보고된 시간을 반환합니다. 주기적 보고의 경우 상태가 동일한 많은 보고서가 생성되었을 수 있지만 이 속성은 첫 번째 '오류' 상태 보고서가 수신된 날짜와 시간만 반환합니다.

현재 상태가 '확인' 또는 '경고'인 경우 다른 상태로 전환하기 전에 상태가 '오류'에서 마지막으로 발생한 날짜와 시간을 반환합니다.

상태 상태가 '오류'가 아닌 경우 값은 0 날짜-시간이 됩니다.