Documentation ¶
Index ¶
- type Capable
- type CommunicatorLogger
- type DefaultLogCommunicatorLogger
- type RequestLogMessage
- func (rl RequestLogMessage) Body() string
- func (rl RequestLogMessage) ContentType() string
- func (rl RequestLogMessage) Headers() map[string][]string
- func (rl RequestLogMessage) Method() string
- func (rl RequestLogMessage) RequestID() string
- func (rl RequestLogMessage) String() string
- func (rl RequestLogMessage) URL() url.URL
- type RequestLogMessageBuilder
- type ResponseLogMessage
- func (rl ResponseLogMessage) Body() string
- func (rl ResponseLogMessage) ContentType() string
- func (rl ResponseLogMessage) Duration() time.Duration
- func (rl ResponseLogMessage) Headers() map[string][]string
- func (rl ResponseLogMessage) ResponseID() string
- func (rl ResponseLogMessage) StatusCode() int
- func (rl ResponseLogMessage) String() string
- type ResponseLogMessageBuilder
- func (rlm *ResponseLogMessageBuilder) AddHeader(name, value string) error
- func (rlm *ResponseLogMessageBuilder) BuildMessage() *ResponseLogMessage
- func (rlm *ResponseLogMessageBuilder) SetBinaryBody(contentType string) error
- func (rlm *ResponseLogMessageBuilder) SetBody(body, contentType string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Capable ¶
type Capable interface { // EnableLogging turns on logging using the given communicator logger. EnableLogging(communicatorLogger CommunicatorLogger) // DisableLogging turns off logging. DisableLogging() }
Capable is an interface used for logging messages from communicators.
type CommunicatorLogger ¶
type CommunicatorLogger interface { // Log logs the specified message. Log(message string) // LogError logs an error with an accompanying message. LogError(message string, err error) }
CommunicatorLogger is used to log messages from communicators. Thread-safe.
func StdOutCommunicatorLogger ¶
func StdOutCommunicatorLogger() CommunicatorLogger
StdOutCommunicatorLogger returns a CommunicatorLogger that outputs to os.Stdout
type DefaultLogCommunicatorLogger ¶
type DefaultLogCommunicatorLogger struct {
// contains filtered or unexported fields
}
DefaultLogCommunicatorLogger adapts a log.Logger to the CommunicatorLogger interface
func NewDefaultLogCommunicatorLogger ¶
func NewDefaultLogCommunicatorLogger(goLog *log.Logger) (*DefaultLogCommunicatorLogger, error)
NewDefaultLogCommunicatorLogger creates a DefaultLogCommunicatorLogger with the given log.Logger
func (DefaultLogCommunicatorLogger) Log ¶
func (dl DefaultLogCommunicatorLogger) Log(message string)
Log the specified message
func (DefaultLogCommunicatorLogger) LogError ¶
func (dl DefaultLogCommunicatorLogger) LogError(message string, err error)
LogError logs the error with a message
type RequestLogMessage ¶
type RequestLogMessage struct {
// contains filtered or unexported fields
}
RequestLogMessage represents a log message about a Request
func (RequestLogMessage) Body ¶
func (rl RequestLogMessage) Body() string
Body returns the request body
func (RequestLogMessage) ContentType ¶
func (rl RequestLogMessage) ContentType() string
ContentType returns the content type
func (RequestLogMessage) Headers ¶
func (rl RequestLogMessage) Headers() map[string][]string
Headers returns the headers
func (RequestLogMessage) Method ¶
func (rl RequestLogMessage) Method() string
Method returns the request method
func (RequestLogMessage) RequestID ¶
func (rl RequestLogMessage) RequestID() string
RequestID returns the request ID
func (RequestLogMessage) String ¶
func (rl RequestLogMessage) String() string
String implements the Stringer interface
func (RequestLogMessage) URL ¶
func (rl RequestLogMessage) URL() url.URL
URL returns the request URL
type RequestLogMessageBuilder ¶
type RequestLogMessageBuilder struct {
// contains filtered or unexported fields
}
RequestLogMessageBuilder represents utility class to build request log messages.
func NewRequestLogMessageBuilder ¶
func NewRequestLogMessageBuilder(requestID, method string, url url.URL, bodyObfuscator obfuscation.BodyObfuscator, headerObfuscator obfuscation.HeaderObfuscator) (*RequestLogMessageBuilder, error)
NewRequestLogMessageBuilder creates a RequestLogMessageBuilder with the given requestID, method, url and obfuscators
func (*RequestLogMessageBuilder) AddHeader ¶
func (rlm *RequestLogMessageBuilder) AddHeader(name, value string) error
AddHeader adds a header to the log message using the name and value
func (*RequestLogMessageBuilder) BuildMessage ¶
func (rlm *RequestLogMessageBuilder) BuildMessage() *RequestLogMessage
BuildMessage builds the RequestLogMessage
func (*RequestLogMessageBuilder) SetBinaryBody ¶
func (rlm *RequestLogMessageBuilder) SetBinaryBody(contentType string) error
SetBinaryBody sets the binary request body
func (*RequestLogMessageBuilder) SetBody ¶
func (rlm *RequestLogMessageBuilder) SetBody(body, contentType string) error
SetBody sets the request body
type ResponseLogMessage ¶
type ResponseLogMessage struct {
// contains filtered or unexported fields
}
ResponseLogMessage represents a log message about a Response
func (ResponseLogMessage) Body ¶
func (rl ResponseLogMessage) Body() string
Body returns the response body
func (ResponseLogMessage) ContentType ¶
func (rl ResponseLogMessage) ContentType() string
ContentType returns the response content-type
func (ResponseLogMessage) Duration ¶
func (rl ResponseLogMessage) Duration() time.Duration
Duration returns the transport duration
func (ResponseLogMessage) Headers ¶
func (rl ResponseLogMessage) Headers() map[string][]string
Headers returns the response headers
func (ResponseLogMessage) ResponseID ¶
func (rl ResponseLogMessage) ResponseID() string
ResponseID returns the response id
func (ResponseLogMessage) StatusCode ¶
func (rl ResponseLogMessage) StatusCode() int
StatusCode returns the response status code
func (ResponseLogMessage) String ¶
func (rl ResponseLogMessage) String() string
String implements the Stringer interface
type ResponseLogMessageBuilder ¶
type ResponseLogMessageBuilder struct {
// contains filtered or unexported fields
}
ResponseLogMessageBuilder represents a utility class to build request log messages.
func NewResponseLogMessageBuilder ¶
func NewResponseLogMessageBuilder(responseID string, statusCode int, duration time.Duration, bodyObfuscator obfuscation.BodyObfuscator, headerObfuscator obfuscation.HeaderObfuscator) (*ResponseLogMessageBuilder, error)
NewResponseLogMessageBuilder creates a ResponseLogMessageBuilder with the given responseID, statusCode, duration and obfuscators
func (*ResponseLogMessageBuilder) AddHeader ¶
func (rlm *ResponseLogMessageBuilder) AddHeader(name, value string) error
AddHeader adds a header to the log message using the name and value
func (*ResponseLogMessageBuilder) BuildMessage ¶
func (rlm *ResponseLogMessageBuilder) BuildMessage() *ResponseLogMessage
BuildMessage builds the ResponseLogMessage
func (*ResponseLogMessageBuilder) SetBinaryBody ¶
func (rlm *ResponseLogMessageBuilder) SetBinaryBody(contentType string) error
SetBinaryBody sets the binary request body
func (*ResponseLogMessageBuilder) SetBody ¶
func (rlm *ResponseLogMessageBuilder) SetBody(body, contentType string) error
SetBody sets the request body