ServiceHealthBehavior 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
상태 엔드포인트를 제공하는 WCF(Windows Communication Foundation) 서비스 동작을 제공합니다.
public ref class ServiceHealthBehavior : System::ServiceModel::Description::ServiceHealthBehaviorBase
public class ServiceHealthBehavior : System.ServiceModel.Description.ServiceHealthBehaviorBase
type ServiceHealthBehavior = class
inherit ServiceHealthBehaviorBase
Public Class ServiceHealthBehavior
Inherits ServiceHealthBehaviorBase
- 상속
설명
상태 엔드포인트는 구성 요소의 상태를 평가하는 상태 검사를 수행하는 데 사용됩니다. 상태 엔드포인트를 사용하여 다음을 수행할 수 있습니다.
중요한 상태 검사에 실패한 프로세스를 종료하도록 오케스트레이션 도구에 알립니다.
서비스의 가용성 및 성능에 대한 경고를 추적하고 제공하여 도구를 모니터링하기 위한 초기 문제 지표 역할을 합니다.
ServiceHealthBehavior
는 IServiceBehavior를 확장하고 에서 ServiceHealthBehaviorBase파생되는 WCF 서비스 동작입니다. 컬렉션에 인스턴스를 ServiceHealthBehavior
ServiceDescription.Behaviors 추가하면 다음을 수행할 수 있습니다.
Service Health 게시: 서비스 상태, 제한 횟수 및 용량과 같은 서비스별 세부 정보는 쿼리 문자열과 함께
?health
HTTP/GET 요청을 사용하여 표시할 수 있습니다. 잘못된 WCF 서비스 문제를 해결할 때 표시되는 정보를 알고 쉽게 액세스할 수 있는 것이 가장 중요합니다.HTTP 응답 코드 반환: 쿼리 문자열에서 HTTP/GET 상태 프로브 요청에 대한 HTTP 상태 코드를 지정할 수 있습니다.
상태 엔드포인트는 상태를 모니터링하는 구성 요소의 컨텍스트에서만 의미가 있습니다. 그것은 다른 의미나 목적이 없습니다. 따라서 해당 상태는 구성 요소의 상태에 대한 통로입니다. 클라이언트는 상태 엔드포인트에서 반환된 HTTP 응답 코드를 전체 구성 요소에 적용할 수 있다고 가정 해야 합니다 . 이는 부하 분산 장치, 서비스 검색 등과 같은 상태 검사를 활용하는 현재 인프라 도구에서 예상하는 동작과 호환됩니다.
상태 엔드포인트 사용
상태 엔드포인트를 노출하고 WCF 서비스 상태 정보를 게시하는 방법에는 두 가지가 있습니다.
구성 파일 사용. 예를 들어:
<behaviors> <serviceBehaviors> <behavior name="DefaultBehavior"> <serviceHealth httpGetEnabled="true"/> </behavior> </serviceBehaviors> </behaviors>
프로그래밍 방식 으로. 다음 코드 조각은 C#을 사용하여 상태 엔드포인트를 노출합니다.
ServiceHost host = new ServiceHost(typeof(Service1), new Uri("http://jconde-dev1:81/Service1")); ServiceHealthBehavior healthBehavior = host.Description.Behaviors.Find<ServiceHealthBehavior>(); if (healthBehavior == null) { healthBehavior = new ServiceHealthBehavior(); } //healthBehavior.HttpGetEnabled = false; //healthBehavior.HttpsGetEnabled = false; host.Description.Behaviors.Add(healthBehavior);
생성자
ServiceHealthBehavior() |
ServiceHealthBehavior 클래스의 새 인스턴스를 초기화합니다. |
속성
HasXmlSupport |
XML 응답 메시지가 지원되는지 여부를 나타내는 값을 가져옵니다. |
HealthDetailsEnabled |
상태 엔드포인트가 서비스 세부 정보를 반환해야 하는 경우 또는 응답이 콘텐츠를 포함하지 않아야 하는 경우를 지정하는 값을 가져오거나 설정합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
HttpGetBinding |
HTTP/Get 요청을 통해 상태 검색에 사용되는 바인딩을 가져오거나 설정합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
HttpGetEnabled |
HTTP/Get 요청을 사용하여 검색을 위한 서비스 메타데이터를 게시하는지 여부를 지정하는 값을 가져오거나 설정합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
HttpGetUrl |
HTTP/Get 요청을 사용하여 검색을 위한 메타데이터가 게시되는 주소를 지정하는 URI를 가져오거나 설정합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
HttpsGetBinding |
HTTPS/Get 요청을 통해 상태 검색에 사용되는 바인딩을 가져오거나 설정합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
HttpsGetEnabled |
HTTPS/Get 요청을 사용하여 검색을 위한 서비스 메타데이터를 게시하는지 여부를 지정하는 값을 가져오거나 설정합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
HttpsGetUrl |
HTTPS/Get 요청을 사용하여 검색을 위한 메타데이터가 게시되는 주소를 지정하는 URI를 가져오거나 설정합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
ServiceStartTime |
상태 검사 서비스가 시작된 시간과 날짜를 가져옵니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
메서드
명시적 인터페이스 구현
IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) |
계약 구현을 지원하려면 사용자 지정 데이터를 바인딩 요소에 전달합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) |
런타임 속성 값을 변경하거나 사용자 지정 확장명 개체(예: 오류 처리기, 메시지, 매개 변수 인터셉터 등), 보안 확장명 및 기타 사용자 지정 확장명 개체를 삽입합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) |
서비스 호스트와 서비스 설명을 검사하여 서비스가 성공적으로 실행될 수 있는지 확인합니다. (다음에서 상속됨 ServiceHealthBehaviorBase) |
적용 대상
.NET