Documentation ¶
Index ¶
- func ObfuscateBody(body string) (string, error)deprecated
- func ObfuscateHeader(name, header string) (string, error)deprecated
- type Capable
- type CommunicatorLogger
- type DefaultLogCommunicatorLogger
- func (dl *DefaultLogCommunicatorLogger) Log(message string)
- func (dl *DefaultLogCommunicatorLogger) LogError(message string, err error)
- func (dl *DefaultLogCommunicatorLogger) LogRequestLogMessage(request *RequestLogMessage)
- func (dl *DefaultLogCommunicatorLogger) LogResponseLogMessage(response *ResponseLogMessage)
- 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
- func (rlm *RequestLogMessageBuilder) AddHeader(name, value string) error
- func (rlm *RequestLogMessageBuilder) BuildMessage() (*RequestLogMessage, error)
- func (rlm *RequestLogMessageBuilder) SetBinaryBody(contentType string) error
- func (rlm *RequestLogMessageBuilder) SetBody(body, contentType string) error
- 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, error)
- 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 ¶
func ObfuscateBody
deprecated
func ObfuscateHeader
deprecated
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) // LogResponseLogMessage logs a response log message LogResponseLogMessage(response *ResponseLogMessage) // LogRequestLogMessage logs a request log message LogRequestLogMessage(request *RequestLogMessage) }
CommunicatorLogger is used to log messages from communicators. Thread-safe.
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 StdOutCommunicatorLogger ¶
func StdOutCommunicatorLogger() *DefaultLogCommunicatorLogger
StdOutCommunicatorLogger returns a CommunicatorLogger that outputs to os.Stdout
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
func (*DefaultLogCommunicatorLogger) LogRequestLogMessage ¶
func (dl *DefaultLogCommunicatorLogger) LogRequestLogMessage(request *RequestLogMessage)
LogRequestLogMessage logs a RequestLogMessage
func (*DefaultLogCommunicatorLogger) LogResponseLogMessage ¶
func (dl *DefaultLogCommunicatorLogger) LogResponseLogMessage(response *ResponseLogMessage)
LogResponseLogMessage logs a ResponseLogMessage
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
deprecated
func NewRequestLogMessageBuilder(requestID, method string, url url.URL) (*RequestLogMessageBuilder, error)
NewRequestLogMessageBuilder creates a RequestLogMessageBuilder with the given requestID, method and url
Deprecated: use NewRequestLogMessageBuilderWithObfuscators instead
func NewRequestLogMessageBuilderWithObfuscators ¶
func NewRequestLogMessageBuilderWithObfuscators(requestID, method string, url url.URL, bodyObfuscator obfuscation.BodyObfuscator, headerObfuscator obfuscation.HeaderObfuscator) (*RequestLogMessageBuilder, error)
NewRequestLogMessageBuilderWithObfuscators 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, error)
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
deprecated
func NewResponseLogMessageBuilder(responseID string, statusCode int, duration time.Duration) (*ResponseLogMessageBuilder, error)
NewResponseLogMessageBuilder creates a ResponseLogMessageBuilder with the given responseID, statusCode and duration
Deprecated: use NewResponseLogMessageBuilderWithObfuscators instead
func NewResponseLogMessageBuilderWithObfuscators ¶
func NewResponseLogMessageBuilderWithObfuscators(responseID string, statusCode int, duration time.Duration, bodyObfuscator obfuscation.BodyObfuscator, headerObfuscator obfuscation.HeaderObfuscator) (*ResponseLogMessageBuilder, error)
NewResponseLogMessageBuilderWithObfuscators 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, error)
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