Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type HttpClient ¶
HttpClient indicates the core function in http.Client, allowing features to be nested easily.
func NewLoggingClient ¶
func NewLoggingClient(upstream HttpClient, logger Logger, level Level) HttpClient
NewLoggingClient wraps an upstream client and logs all requests made to it.
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 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.