logging

package
v0.0.0-...-97c5a11 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 18, 2024 License: BSD-3-Clause, MIT Imports: 9 Imported by: 2

Documentation

Index

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

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL