Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsTextual ¶
IsTextual tests a media type (a.k.a. content type) to determine whether it describes text or binary content.
func New ¶
func New(upstream httpclient.HttpClient, logger Logger, level Level) httpclient.HttpClient
New wraps an upstream client and logs all requests made to it.
Types ¶
type Level ¶
type Level int
Level allows control of the level of detail in log messages.
const ( // Off turns logging off. Off Level = iota // Discrete log messages contain only a summary of the request and response. // No query parameters are printed in order to hide potential personal information. Discrete // Summary log messages contain only a summary of the request and response, // including the full target URL. Summary // WithHeaders log messages contain a summary and the request/response headers WithHeaders // WithHeadersAndBodies log messages contain a summary and the request/response headers and bodies // Textual bodies are included in the log; for binary content, the size is shown instead. WithHeadersAndBodies )
type LogContent ¶
type LogItem ¶
type LogItem struct {
Method string
URL string
StatusCode int
Request LogContent
Response LogContent
Err error
Duration time.Duration
Level Level
}
type LoggingClient ¶
type LoggingClient struct {
// contains filtered or unexported fields
}
LoggingClient is a HttpClient with a pluggable logger.
Click to show internal directories.
Click to hide internal directories.