Поделиться через


IHttpClientAsyncLogger Интерфейс

Определение

Абстракция для асинхронного пользовательского ведения журнала HTTP-запросов для именованных экземпляров HttpClient, возвращаемых IHttpClientFactory.

public interface class IHttpClientAsyncLogger : Microsoft::Extensions::Http::Logging::IHttpClientLogger
public interface IHttpClientAsyncLogger : Microsoft.Extensions.Http.Logging.IHttpClientLogger
type IHttpClientAsyncLogger = interface
    interface IHttpClientLogger
Public Interface IHttpClientAsyncLogger
Implements IHttpClientLogger
Реализации

Комментарии

Асинхронные методы (например, LogRequestStartAsync(HttpRequestMessage, CancellationToken)) будут вызываться из асинхронных путей кода (например, SendAsync(HttpRequestMessage, CancellationToken)), а их синхронные аналоги, унаследованные от IHttpClientLogger (например, LogRequestStart(HttpRequestMessage)) будут вызываться из соответствующих путей кода синхронизации.

Это до пользователя, реализуемого интерфейсом, чтобы решить, где (ILoggerили что-либо другое) и что именно нужно регистрировать. Однако реализация должна учитывать потенциальные неблагоприятные побочные эффекты доступа к некоторым из HttpRequestMessage или HttpResponseMessage свойств, таких как чтение из потока содержимого; Если это возможно, следует избежать такого поведения.

Реализация ведения журнала также не должна вызывать никаких исключений, так как необработанное исключение в журнале приведет к сбою запроса.

Методы

LogRequestFailed(Object, HttpRequestMessage, HttpResponseMessage, Exception, TimeSpan)

Регистрирует исключение при отправке HTTP-запроса.

(Унаследовано от IHttpClientLogger)
LogRequestFailedAsync(Object, HttpRequestMessage, HttpResponseMessage, Exception, TimeSpan, CancellationToken)

Регистрирует исключение при отправке HTTP-запроса.

LogRequestStart(HttpRequestMessage)

Журналы перед отправкой HTTP-запроса.

(Унаследовано от IHttpClientLogger)
LogRequestStartAsync(HttpRequestMessage, CancellationToken)

Журналы перед отправкой HTTP-запроса.

LogRequestStop(Object, HttpRequestMessage, HttpResponseMessage, TimeSpan)

Журналы после получения HTTP-ответа.

(Унаследовано от IHttpClientLogger)
LogRequestStopAsync(Object, HttpRequestMessage, HttpResponseMessage, TimeSpan, CancellationToken)

Журналы после получения HTTP-ответа.

Применяется к