ServiceHealthBehavior Klasa

Definicja

Zapewnia zachowanie 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:

  • Powiadamiaj narzędzia orkiestracji, aby zabicia procesu, który nie sprawdza kondycji o krytycznym znaczeniu.

  • Służy jako wskaźnik wczesnego 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 IServiceBehavior i pochodzi od ServiceHealthBehaviorBase . Dodanie ServiceHealthBehavior wystąpienia do ServiceDescription.Behaviors kolekcji umożliwia:

  • Publikowanie Service Health: Szczegóły specyficzne dla usługi, takie jak stan usługi, liczniki ograniczenia przepustowości i pojemność, mogą być wyświetlane przy użyciu żądania HTTP/GET z ?health ciągiem zapytania. Wiedza i łatwy dostęp do wyświetlanych informacji mają ogromne znaczenie podczas rozwiązywania problemów z błędnie zachowującą się usługą WCF.

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

Punkt końcowy kondycji ma znaczenie tylko w kontekście składnika, którego kondycję monitoruje. Nie ma żadnego innego znaczenia ani celu. W związku z tym jego kondycja jest elementem 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 infrastruktury wykorzystujące kontrole kondycji, takie jak usługi równoważenia obciążenia, odnajdywania usług i inne.

Włączanie punktu końcowego kondycji

Istnieją dwa sposoby określania, jak uwidocznić punkt końcowy kondycji i opublikować informacje o kondycji usługi WCF:

  • Przy użyciu pliku konfiguracji. Na przykład:

    <behaviors>
       <serviceBehaviors>
         <behavior name="DefaultBehavior">
           <serviceHealth httpGetEnabled="true"/>
         </behavior>
       </serviceBehaviors>
    </behaviors>
    
  • Programowo. Poniższy fragment kodu używa języka C# do uwidoczninia 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

ServiceHealthBehavior()

Inicjuje nowe wystąpienie klasy ServiceHealthBehavior.

Właściwości

HasXmlSupport

Pobiera wartość, która wskazuje, czy komunikaty odpowiedzi XML są obsługiwane.

HealthDetailsEnabled

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

(Odziedziczone po ServiceHealthBehaviorBase)
HttpGetBinding

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

(Odziedziczone po ServiceHealthBehaviorBase)
HttpGetEnabled

Pobiera lub ustawia wartość określającą, czy publikować metadane usługi do pobrania przy użyciu żądania HTTP/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpGetUrl

Pobiera lub ustawia URI, który określa adres, na który metadane są publikowane do pobrania przy użyciu żądania HTTP/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpsGetBinding

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

(Odziedziczone po ServiceHealthBehaviorBase)
HttpsGetEnabled

Pobiera lub ustawia wartość określającą, czy publikować metadane usługi do pobrania przy użyciu żądania HTTPS/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
HttpsGetUrl

Pobiera lub ustawia URI, który określa adres, na który metadane są publikowane do pobrania przy użyciu żądania HTTPS/Get.

(Odziedziczone po ServiceHealthBehaviorBase)
ServiceStartTime

Pobiera datę i godzina rozpoczęcia usługi kontroli kondycji.

(Odziedziczone po ServiceHealthBehaviorBase)

Metody

AddHttpProperty(Message, HttpStatusCode, Boolean)

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

EnsureHttpStatusCode(Int32)

Upewnij się, że kod stanu HTTP należy do zakresu od 200 do 599 (włącznie).

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(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 jego zdefiniowany kod odpowiedzi HTTP.

GetServiceHealthSections(ServiceHostBase)

Pobiera kolekcję obiektów ServiceHealthSection zdefiniowanych w . ServiceHealthBehavior

GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
GetXmlDocument(ServiceHostBase)

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

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

Zwraca komunikat odpowiedzi do określonego żądania.

MemberwiseClone()

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

(Odziedziczone po Object)
ToString()

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

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

Próbuje parsować parametr ciągu zapytania logicznych i zwraca wartość, która wskazuje, czy operacja analizowania zakończyła się pomyślnie.

TryParseHttpStatusCodeQueryParameter(String, String, HttpStatusCode, HttpStatusCode)

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

Jawne implementacje interfejsu

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 działania lub wstawia niestandardowe obiekty rozszerzeń, takie jak programy obsługi błędów, przechwytywacze 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 upewnić się, że usługa może działać pomyślnie.

(Odziedziczone po ServiceHealthBehaviorBase)

Dotyczy