Share via


정책을 사용하여 배포된 애플리케이션 상태 가져오기

Service Fabric 노드에 배포된 애플리케이션의 상태에 대한 정보를 가져옵니다. 지정한 정책을 사용합니다.

지정된 정책을 사용하여 Service Fabric 노드에 배포된 애플리케이션의 상태에 대한 정보를 가져옵니다. EventsHealthStateFilter를 사용하여 필요에 따라 상태에 따라 배포된 애플리케이션에 보고된 HealthEvent 개체의 컬렉션에 대해 필터링합니다. DeployedServicePackagesHealthStateFilter를 사용하여 필요에 따라 상태를 기반으로 한 DeployedServicePackageHealth 자식에 대해 필터링합니다. ApplicationHealthPolicy를 사용하여 필요에 따라 상태를 평가하는 데 사용되는 상태 정책을 재정의합니다. 이 API는 ApplicationHealthPolicy의 'ConsiderWarningAsError' 필드만 사용합니다. 배포된 애플리케이션의 상태를 평가하는 동안 나머지 필드는 무시됩니다.

요청

메서드 요청 URI
POST /Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetHealth?api-version=6.0&EventsHealthStateFilter={EventsHealthStateFilter}&DeployedServicePackagesHealthStateFilter={DeployedServicePackagesHealthStateFilter}&ExcludeHealthStatistics={ExcludeHealthStatistics}&timeout={timeout}

매개 변수

속성 형식 필수 위치
nodeName 문자열 경로
applicationId 문자열 경로
api-version 문자열 쿼리
EventsHealthStateFilter integer 아니요 쿼리
DeployedServicePackagesHealthStateFilter integer 아니요 쿼리
ExcludeHealthStatistics boolean 쿼리
timeout 정수(int64) 아니요 쿼리
ApplicationHealthPolicy ApplicationHealthPolicy 본문

nodeName

형식: 문자열
필수: 예

노드의 이름입니다.


applicationId

형식: 문자열
필수: 예

애플리케이션 ID입니다. 일반적으로 'fabric:' URI 스키마가 없는 애플리케이션의 전체 이름입니다. 버전 6.0에서 시작하며, 계층적 이름이 "~" 문자로 구분됩니다. 예를 들어 애플리케이션 이름이 ‘fabric://myapp/app1’인 경우 애플리케이션 ID가 6.0 이상에서는 “myapp~app1”이고 이전 버전에서는 “myapp/app1”입니다.


api-version

형식: 문자열
필수: 예
기본: 6.0

API 버전입니다. 이 매개 변수는 필수이며 해당 값은 '6.0'이어야 합니다.

Service Fabric REST API 버전은 API가 도입되었거나 변경된 런타임 버전을 기반으로 합니다. Service Fabric 런타임은 둘 이상의 API 버전을 지원합니다. 지원되는 최신 버전의 API입니다. 더 낮은 API 버전이 전달되면 반환된 응답이 이 사양에 설명된 응답과 다를 수 있습니다.

또한 런타임은 현재 버전의 런타임까지 지원되는 최신 버전보다 높은 모든 버전을 허용합니다. 따라서 최신 API 버전이 6.0이지만 런타임이 6.1인 경우 클라이언트를 더 쉽게 작성하기 위해 런타임은 해당 API에 대해 버전 6.1을 수락합니다. 그러나 API의 동작은 문서화된 6.0 버전에 따라 다릅니다.


EventsHealthStateFilter

형식: 정수
필수: 아니요
기본: 0

상태에 따라 반환된 HealthEvent 개체의 컬렉션을 필터링할 수 있습니다. 이 매개 변수에 사용할 수 있는 값은 다음 상태 중 하나의 정수 값을 포함합니다. 필터와 일치하는 이벤트만 반환됩니다. 모든 이벤트는 집계된 상태를 평가하는 데 사용됩니다. 지정하지 않으면 모든 항목이 반환됩니다. 상태 값은 플래그 기반 열거형이므로 값은 비트 OR 연산자를 사용하여 구한 값의 조합일 수 있습니다. 예를 들어 제공된 값이 6이면 HealthState 값이 OK(2) 및 Warning(4)인 모든 이벤트가 반환됩니다.

  • 기본값 - 기본값입니다. 모든 HealthState와 일치합니다. 값은 0입니다.
  • 없음 - HealthState 값과 일치하지 않는 필터입니다. 주어진 상태 컬렉션에 대해 결과를 반환하지 않기 위해 사용됩니다. 값은 1입니다.
  • Ok - HealthState 값이 Ok인 입력과 일치하는 필터입니다. 값은 2입니다.
  • 경고 - HealthState 값 경고가 있는 입력과 일치하는 필터입니다. 값은 4입니다.
  • 오류 - HealthState 값이 Error인 입력과 일치하는 필터입니다. 값은 8입니다.
  • 모두 - HealthState 값이 있는 입력과 일치하는 필터입니다. 값은 65535입니다.

DeployedServicePackagesHealthStateFilter

형식: 정수
필수: 아니요
기본: 0

배포된 서비스 패키지 상태 개체의 필터링이 상태를 기반으로 한 배포된 애플리케이션 상태 쿼리의 결과로 반환되도록 허용합니다. 이 매개 변수에 사용할 수 있는 값은 다음 상태 중 하나의 정수 값을 포함합니다. 필터와 일치하는 배포된 서비스 패키지만 반환됩니다. 모든 배포된 서비스 패키지는 배포된 애플리케이션의 집계된 상태를 평가하는 데 사용됩니다. 지정하지 않으면 모든 항목이 반환됩니다. 상태 값은 플래그 기반 열거형이므로 값은 비트 'OR' 연산자를 사용하여 구한 값의 조합일 수 있습니다. 예를 들어 제공된 값이 6이면 HealthState 값이 OK(2) 및 Warning(4)인 서비스 패키지의 상태가 반환됩니다.

  • 기본값 - 기본값입니다. 모든 HealthState와 일치합니다. 값은 0입니다.
  • 없음 - HealthState 값과 일치하지 않는 필터입니다. 주어진 상태 컬렉션에 대해 결과를 반환하지 않기 위해 사용됩니다. 값은 1입니다.
  • 확인 - HealthState 값 확인을 사용하여 입력과 일치하는 필터입니다. 값은 2입니다.
  • 경고 - HealthState 값 경고와 입력과 일치하는 필터입니다. 값은 4입니다.
  • 오류 - HealthState 값 오류와 입력과 일치하는 필터입니다. 값은 8입니다.
  • All - HealthState 값과 입력과 일치하는 필터입니다. 값은 65535입니다.

ExcludeHealthStatistics

형식: 부울
필수: 아니요
기본: false

상태 통계가 쿼리 결과의 일부로 반환되어야 하는지 여부를 나타냅니다. False(기본값). 통계는 Ok, Warning 및 Error 상태의 자식 엔터티 수를 보여줍니다.


timeout

형식: 정수(int64)
필수: 아니요
기본: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1

작업을 수행하기 위한 서버 제한 시간(초)입니다. 이 시간 제한은 요청된 작업이 완료될 때까지 클라이언트가 기다릴 시간을 지정합니다. 이 매개 변수의 기본값은 60초입니다.


ApplicationHealthPolicy

형식: ApplicationHealthPolicy
필수: 아니요

애플리케이션 또는 해당 자식 중 하나의 상태를 평가하는 데 사용되는 상태 정책을 설명합니다. 없는 경우 상태 평가는 애플리케이션 매니페스트 또는 기본 상태 정책의 상태 정책을 사용합니다.

응답

HTTP 상태 코드 설명 응답 스키마
200(확인) 작업이 성공하면 200개 상태 코드와 배포된 애플리케이션의 상태 정보가 반환됩니다.
DeployedApplicationHealth
다른 모든 상태 코드 자세한 오류 응답입니다.
FabricError