ServiceHealthBehavior Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje chování služby WCF (Windows Communication Foundation), která poskytuje koncový bod stavu.
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
- Dědičnost
Poznámky
Koncové body stavu se používají k provádění kontrol stavu, které vyhodnocují stav komponenty. Koncové body stavu se dají použít k:
Oznámit orchestračním nástrojům ukončení procesu, který selhává při kritické kontrole stavu.
Slouží jako počáteční indikátor problému pro monitorovací nástroje sledování sledováním a poskytováním upozornění na dostupnost a výkon služby.
ServiceHealthBehavior
je chování služby WCF, které rozšiřuje IServiceBehavior a je odvozen z ServiceHealthBehaviorBase.
ServiceHealthBehavior
Přidání instance do ServiceDescription.Behaviors kolekce umožňuje následující:
Publikování služby Service Health: Podrobnosti specifické pro službu, jako je stav služby, počty omezení a kapacita, je možné zobrazit pomocí požadavku HTTP/GET s řetězcem
?health
dotazu. Znalost a snadný přístup k zobrazeným informacím má při řešení potíží se špatnou službou WCF zásadní význam.Vrácení kódů odpovědí HTTP: V řetězci dotazu můžete zadat stavový kód HTTP pro požadavek sondy stavu HTTP/GET.
Koncový bod stavu je smysluplný pouze v kontextu komponenty, jejíž stav monitoruje. Nemá žádný jiný význam ani účel. Jeho stav je tedy spojením se stavem komponenty. Klienti by měli předpokládat, že kód odpovědi HTTP vrácený koncovým bodem stavu je použitelný pro celou komponentu. To je kompatibilní s chováním očekávaným aktuálními nástroji infrastruktury, které využívají kontroly stavu, jako jsou nástroje pro vyrovnávání zatížení, zjišťování služeb a další.
Povolení koncového bodu stavu
Existují dva způsoby, jak určit, jak zveřejnit koncový bod stavu a publikovat informace o stavu služby WCF:
Pomocí konfiguračního souboru. Příklad:
<behaviors> <serviceBehaviors> <behavior name="DefaultBehavior"> <serviceHealth httpGetEnabled="true"/> </behavior> </serviceBehaviors> </behaviors>
Programově. Následující fragment kódu používá jazyk C# ke zveřejnění koncového bodu stavu:
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() |
Inicializuje novou instanci ServiceHealthBehavior třídy . |
Vlastnosti
HasXmlSupport |
Získá hodnotu, která označuje, zda jsou podporovány zprávy odpovědi XML. |
HealthDetailsEnabled |
Získá nebo nastaví hodnotu, která určuje, jestli má koncový bod stavu vrátit podrobnosti o službě nebo jestli má odpověď obsahovat žádný obsah. (Zděděno od ServiceHealthBehaviorBase) |
HttpGetBinding |
Získá nebo nastaví vazbu, která se používá pro načtení stavu prostřednictvím požadavku HTTP nebo Get. (Zděděno od ServiceHealthBehaviorBase) |
HttpGetEnabled |
Získá nebo nastaví hodnotu, která určuje, zda publikovat metadata služby pro načtení pomocí požadavku HTTP nebo Get. (Zděděno od ServiceHealthBehaviorBase) |
HttpGetUrl |
Získá nebo nastaví identifikátor URI, který určuje adresu, na kterou jsou metadata publikována pro načtení pomocí požadavku HTTP/Get. (Zděděno od ServiceHealthBehaviorBase) |
HttpsGetBinding |
Získá nebo nastaví vazbu, která se používá pro načtení stavu prostřednictvím požadavku HTTPS nebo Get. (Zděděno od ServiceHealthBehaviorBase) |
HttpsGetEnabled |
Získá nebo nastaví hodnotu, která určuje, zda publikovat metadata služby pro načtení pomocí požadavku HTTPS nebo Get. (Zděděno od ServiceHealthBehaviorBase) |
HttpsGetUrl |
Získá nebo nastaví identifikátor URI, který určuje adresu, na kterou se metadata publikují pro načtení pomocí požadavku HTTPS/Get. (Zděděno od ServiceHealthBehaviorBase) |
ServiceStartTime |
Získá datum a čas spuštění služby kontroly stavu. (Zděděno od ServiceHealthBehaviorBase) |
Metody
AddHttpProperty(Message, HttpStatusCode, Boolean) |
Nastaví typ obsahu a stavový kód HTTP pro zprávu odpovědi. |
EnsureHttpStatusCode(Int32) |
Ujistěte se, že je stavový kód HTTP v rozsahu 200 až 599 (včetně). |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetHttpResponseCode(ServiceHostBase, String[]) |
Analyzuje pole řetězce dotazu a vrátí definovaný kód odpovědi HTTP. |
GetServiceHealthSections(ServiceHostBase) |
Získá kolekci ServiceHealthSection objektů definovaných v objektu ServiceHealthBehavior. |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
GetXmlDocument(ServiceHostBase) |
Serializuje ServiceHealthModel objekt přidružený k zadané |
HandleHealthRequest(ServiceHostBase, Message, String[], Message) |
Vrátí zprávu odpovědi na zadaný požadavek. |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
TryParseBooleanQueryParameter(String, String, Boolean, Boolean) |
Pokusí se parsovat logický parametr řetězce dotazu a vrátí hodnotu, která označuje, jestli byla operace analýzy úspěšná. |
TryParseHttpStatusCodeQueryParameter(String, String, HttpStatusCode, HttpStatusCode) |
Pokusí se parsovat stavový kód HTTP proměnné řetězce dotazu a vrátí hodnotu, která označuje, jestli byla operace parsování úspěšná. |
Explicitní implementace rozhraní
IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) |
Předává vlastní data prvkům vazby pro podporu implementace kontaktu. (Zděděno od ServiceHealthBehaviorBase) |
IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) |
Změní hodnoty vlastností za běhu nebo vloží vlastní rozšiřující objekty, jako jsou obslužné rutiny chyb, zachytávání zpráv nebo parametrů, rozšíření zabezpečení a další vlastní objekty rozšíření. (Zděděno od ServiceHealthBehaviorBase) |
IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) |
Zkontroluje hostitele služby a popis služby a ověří, že se služba úspěšně spustí. (Zděděno od ServiceHealthBehaviorBase) |