Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func LoggingMiddleware ¶
func LoggingMiddleware(logger, errLogger log.Logger) endpoint.Middleware
LoggingMiddleware returns an endpoint middleware that logs the duration of each invocation, the resulting error (if any), and keyvals specific to the request and response object if they implement the AppendKeyvalser interface. If not nil, errLogger will be used for logging requests that resulted in a non-nil error being returned.
Types ¶
type AppendKeyvalser ¶
type AppendKeyvalser interface {
AppendKeyvals(keyvals []interface{}) []interface{}
}
AppendKeyvalser is an interface that wraps the basic AppendKeyvals method.
AppendKeyvals should be implemented to append key/value pairs into keyvals without removing any existing elements, then return the extended keyvals.
Example: // Define your struct type type SomeType struct{ AField string BField string } // Implement the AppendKeyvals func to satisfy the AppendKeyvalser interface func (s SomeType) AppendKeyvals(keyvals []interface{}) []interface{} { // Add key/value sets here (2 values per set, key followed by value) return append(keyvals, "SomeType.AField", s.AField, "SomeType.BField", s.BField) }
Click to show internal directories.
Click to hide internal directories.