ServiceHealthBehavior Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет поведение службы Windows Communication Foundation (WCF), которое предоставляет конечную точку работоспособности.
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
— это поведение службы WCF, которое расширяет IServiceBehavior и является производным от ServiceHealthBehaviorBase. Добавление экземпляра ServiceHealthBehavior
в коллекцию ServiceDescription.Behaviors обеспечивает следующее:
Публикация данных о работоспособности служб: Сведения о службе, такие как состояние службы, число регулирования и емкость, можно отобразить с помощью http/GET-запроса со строкой
?health
запроса. Знание и простой доступ к отображаемой информации имеет первостепенное значение при устранении неполадок с неправильной службой WCF.Возврат кодов http-ответов: В строке запроса можно указать код состояния HTTP для запроса пробы работоспособности HTTP/GET.
Конечная точка работоспособности имеет смысл только в контексте компонента, работоспособность которого отслеживается. Он не имеет никакого другого смысла или цели. Таким образом, его работоспособность является каналом для работоспособности компонента. Клиенты должны предполагать , что код 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 |
Возвращает или задает универсальный код ресурса (URI), указывающий адрес, по которому метаданные публикуются для извлечения с использованием запроса HTTP/Get. (Унаследовано от ServiceHealthBehaviorBase) |
HttpsGetBinding |
Возвращает или задает привязку, которая используется для извлечения сведений о работоспособности с помощью запроса HTTPS/Get. (Унаследовано от ServiceHealthBehaviorBase) |
HttpsGetEnabled |
Возвращает или задает значение, указывающее, следует ли опубликовывать метаданные службы для извлечения с помощью запроса HTTPS/Get. (Унаследовано от ServiceHealthBehaviorBase) |
HttpsGetUrl |
Возвращает или задает универсальный код ресурса (URI), указывающий адрес, по которому метаданные публикуются для извлечения с использованием запроса HTTPS/Get. (Унаследовано от ServiceHealthBehaviorBase) |
ServiceStartTime |
Возвращает дату и время запуска службы проверки работоспособности. (Унаследовано от ServiceHealthBehaviorBase) |
Методы
AddHttpProperty(Message, HttpStatusCode, Boolean) |
Задает тип содержимого и код состояния HTTP для сообщения ответа. |
EnsureHttpStatusCode(Int32) |
Проверяет, что код состояния HTTP находится в диапазоне от 200 до 599 включительно. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetHttpResponseCode(ServiceHostBase, String[]) |
Выполняет синтаксический анализ полей строки запроса и возвращает определенный код ответа HTTP. |
GetServiceHealthSections(ServiceHostBase) |
Возвращает коллекцию объектов ServiceHealthSection, определенных в ServiceHealthBehavior. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
GetXmlDocument(ServiceHostBase) |
Сериализует объект ServiceHealthModel, связанный с указанным |
HandleHealthRequest(ServiceHostBase, Message, String[], Message) |
Возвращает ответное сообщение на указанный запрос. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
TryParseBooleanQueryParameter(String, String, Boolean, Boolean) |
Пытается выполнить синтаксический анализ логического параметра строки запроса и возвращает значение, указывающее, успешно ли была выполнена операция синтаксического анализа. |
TryParseHttpStatusCodeQueryParameter(String, String, HttpStatusCode, HttpStatusCode) |
Пытается выполнить синтаксический анализ кода состояния HTTP переменной со строкой запроса и возвращает значение, указывающее, успешно ли была выполнена операция синтаксического анализа. |
Явные реализации интерфейса
IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) |
Передает настраиваемые данные в элементы привязки для предоставления поддержки реализации контакта. (Унаследовано от ServiceHealthBehaviorBase) |
IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) |
Изменяет значения свойств времени выполнения или вставляет объекты настраиваемых расширений, например, обработчики ошибок, перехватчики параметров или сообщения, а также другие объекты настраиваемых расширений. (Унаследовано от ServiceHealthBehaviorBase) |
IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) |
Проверяет узел и описание службы, чтобы подтвердить готовность службы к работе. (Унаследовано от ServiceHealthBehaviorBase) |