Język

ServiceHealthBehavior Klasa

Definicja

Zapewnia zachowanie usługi Windows Communication Foundation (WCF), które zapewnia punkt końcowy kondycji.

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
Dziedziczenie
ServiceHealthBehavior

Uwagi

Punkty końcowe kondycji są używane do przeprowadzania kontroli kondycji, które oceniają kondycję składnika. Punkty końcowe kondycji mogą służyć do:

  • Powiadom narzędzia orkiestracji, aby zabić proces, który kończy się niepowodzeniem krytycznego sprawdzania kondycji.

  • Służy jako wczesny wskaźnik problemu dla narzędzi do monitorowania, śledząc i dostarczając alerty dotyczące dostępności i wydajności usługi.

ServiceHealthBehavior to zachowanie usługi WCF, które rozszerza usługę IServiceBehavior i pochodzi z klasy ServiceHealthBehaviorBase. ServiceHealthBehavior Dodanie wystąpienia do ServiceDescription.Behaviors kolekcji umożliwia wykonanie następujących czynności:

  • Publikacja kondycji usługi: Szczegółowe informacje dotyczące usługi, takie jak stan usługi, liczba ograniczeń i pojemność, mogą być wyświetlane przy użyciu żądania HTTP/GET z ciągiem ?health zapytania. Znajomość i łatwe uzyskiwanie dostępu do wyświetlanych informacji ma kluczowe znaczenie podczas rozwiązywania problemów z błędną usługą WCF.

  • Zwracanie kodów odpowiedzi HTTP: Można określić w ciągu zapytania kod stanu HTTP dla żądania sondy kondycji HTTP/GET.

Punkt końcowy kondycji ma znaczenie tylko w kontekście składnika, którego kondycja monitoruje. Nie ma innego znaczenia ani celu. W związku z tym jego kondycja jest kanałem do kondycji składnika. Klienci powinni założyć, że kod odpowiedzi HTTP zwrócony przez punkt końcowy kondycji ma zastosowanie do całego składnika. Jest to zgodne z zachowaniem oczekiwanym przez bieżące narzędzia infrastrukturalne, które korzystają z kontroli kondycji, takich jak moduły równoważenia obciążenia, odnajdywanie usług i inne.

Włączanie punktu końcowego kondycji

Istnieją dwa sposoby określania sposobu uwidocznienia punktu końcowego kondycji i publikowania informacji o kondycji usługi WCF:

  • Za pomocą pliku konfiguracji. Przykład:

    <behaviors>
       <serviceBehaviors>
         <behavior name="DefaultBehavior">
           <serviceHealth httpGetEnabled="true"/>
         </behavior>
       </serviceBehaviors>
    </behaviors>
    
  • Programowo. Poniższy fragment kodu używa języka C# do uwidocznienia punktu końcowego kondycji:

    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);
    

Konstruktory

Nazwa Opis
ServiceHealthBehavior()

Inicjuje nowe wystąpienie klasy ServiceHealthBehavior.

Właściwości

Nazwa Opis
HasXmlSupport

Pobiera wartość wskazującą, czy komunikaty odpowiedzi XML są obsługiwane.

HealthDetailsEnabled

Pobiera lub ustawia wartość określającą, czy punkt końcowy kondycji powinien zwrócić szczegóły usługi lub czy odpowiedź nie powinna zawierać zawartości.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpGetBinding

Pobiera lub ustawia powiązanie używane do pobierania kondycji za pośrednictwem żądania HTTP/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpGetEnabled

Pobiera lub ustawia wartość określającą, czy opublikować metadane usługi na potrzeby pobierania przy użyciu żądania HTTP/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpGetUrl

Pobiera lub ustawia identyfikator URI określający adres, do którego metadane są publikowane do pobierania przy użyciu żądania HTTP/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpsGetBinding

Pobiera lub ustawia powiązanie używane do pobierania kondycji za pośrednictwem żądania HTTPS/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpsGetEnabled

Pobiera lub ustawia wartość określającą, czy opublikować metadane usługi na potrzeby pobierania przy użyciu żądania HTTPS/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpsGetUrl

Pobiera lub ustawia identyfikator URI określający adres, do którego metadane są publikowane do pobierania przy użyciu żądania HTTPS/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
ServiceStartTime

Pobiera datę i godzinę uruchomienia usługi sprawdzania kondycji.

(Odziedziczone po ServiceHealthBehaviorBase)

Metody

Nazwa Opis
AddHttpProperty(Message, HttpStatusCode, Boolean)

Ustawia typ zawartości i kod stanu HTTP dla komunikatu odpowiedzi.

EnsureHttpStatusCode(Int32)

Upewnij się, że kod stanu HTTP mieści się w zakresie od 200 do 599 włącznie.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetHttpResponseCode(ServiceHostBase, String[])

Analizuje pola ciągu zapytania i zwraca zdefiniowany kod odpowiedzi HTTP.

GetServiceHealthSections(ServiceHostBase)

Pobiera kolekcję ServiceHealthSection obiektów zdefiniowanych w obiekcie ServiceHealthBehavior.

GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
GetXmlDocument(ServiceHostBase)

Serializuje ServiceHealthModel obiekt skojarzony z określonym serviceHost i zwraca go w formacie XML.

HandleHealthRequest(ServiceHostBase, Message, String[], Message)

Zwraca komunikat odpowiedzi do określonego żądania.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
TryParseBooleanQueryParameter(String, String, Boolean, Boolean)

Próbuje przeanalizować parametr ciągu zapytania logicznego i zwraca wartość wskazującą, czy operacja analizowania zakończyła się pomyślnie.

TryParseHttpStatusCodeQueryParameter(String, String, HttpStatusCode, HttpStatusCode)

Próbuje przeanalizować kod stanu HTTP zmiennej ciągu zapytania i zwraca wartość wskazującą, czy operacja analizowania zakończyła się pomyślnie.

Jawne implementacje interfejsu

Nazwa Opis
IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection)

Przekazuje dane niestandardowe do elementów powiązania w celu obsługi implementacji kontaktów.

(Odziedziczone po ServiceHealthBehaviorBase)
IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Zmienia wartości właściwości czasu wykonywania lub wstawia niestandardowe obiekty rozszerzeń, takie jak programy obsługi błędów, przechwytywanie komunikatów lub parametrów, rozszerzenia zabezpieczeń i inne niestandardowe obiekty rozszerzeń.

(Odziedziczone po ServiceHealthBehaviorBase)
IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Sprawdza hosta usługi i opis usługi, aby potwierdzić, że usługa może działać pomyślnie.

(Odziedziczone po ServiceHealthBehaviorBase)

Dotyczy