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-ответа. |