negronilogrus

package module
v1.0.7 Latest Latest
Warning

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

Go to latest
Published: Sep 17, 2019 License: MIT Imports: 8 Imported by: 0

README

negroni-logrus

GoDoc Build Status

logrus middleware for negroni

Usage

Take a peek at the basic example or the custom example, the latter of which includes setting a custom log level on the logger with NewCustomMiddleware.

If you want to reuse an already initialized logrus.Logger, you should be using NewMiddlewareFromLogger (see existinglogrus).

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddWriterToContext

func AddWriterToContext(ctx context.Context, rw http.ResponseWriter) context.Context

AddWriterToContext adds ResponseWriter to the context for extraction later. Returning the new context that has been created.

func DefaultAfter

func DefaultAfter(entry *logrus.Entry, res negroni.ResponseWriter, latency time.Duration, name string) *logrus.Entry

DefaultAfter is the default func assigned to *Middleware.After

func DefaultBefore

func DefaultBefore(entry *logrus.Entry, req *http.Request, remoteAddr string) *logrus.Entry

DefaultBefore is the default func assigned to *Middleware.Before

func Extract

func Extract(ctx context.Context) *logrus.Entry

Extract takes the call-scoped logrus.Entry from ctx_logrus middleware.

If the ctx_logrus middleware wasn't used, a no-op `logrus.Entry` is returned. This makes it safe to use regardless.

func ExtractWriter

func ExtractWriter(ctx context.Context) http.ResponseWriter

ExtractWriter extracts ResponseWriter

func ToContext

func ToContext(ctx context.Context, entry *logrus.Entry) context.Context

ToContext adds the logrus.Entry to the context for extraction later. Returning the new context that has been created.

Types

type AfterFunc

AfterFunc is the func type used to modify or replace the *logrus.Entry after calling the next func in the middleware chain

type BeforeFunc

type BeforeFunc func(*logrus.Entry, *http.Request, string) *logrus.Entry

BeforeFunc is the func type used to modify or replace the *logrus.Entry prior to calling the next func in the middleware chain

type Middleware

type Middleware struct {
	// Logger is the log.Logger instance used to log messages with the Logger middleware
	Logger *logrus.Logger
	// Name is the name of the application as recorded in latency metrics
	Name   string
	Before func(*logrus.Entry, *http.Request, string) *logrus.Entry
	After  func(*logrus.Entry, negroni.ResponseWriter, time.Duration, string) *logrus.Entry
	// contains filtered or unexported fields
}

Middleware is a middleware handler that logs the request as it goes in and the response as it goes out.

func NewCustomMiddleware

func NewCustomMiddleware(level logrus.Level, formatter logrus.Formatter, name string) *Middleware

NewCustomMiddleware builds a *Middleware with the given level and formatter

func NewMiddleware

func NewMiddleware() *Middleware

NewMiddleware returns a new *Middleware, yay!

func NewMiddlewareFromLogger

func NewMiddlewareFromLogger(logger *logrus.Logger, name string) *Middleware

NewMiddlewareFromLogger returns a new *Middleware which writes to a given logrus logger.

func (*Middleware) ExcludeURL

func (m *Middleware) ExcludeURL(u string) error

ExcludeURL adds a new URL u to be ignored during logging. The URL u is parsed, hence the returned error

func (*Middleware) ExcludedURLs

func (m *Middleware) ExcludedURLs() []string

ExcludedURLs returns the list of excluded URLs for this middleware

func (*Middleware) ServeHTTP

func (m *Middleware) ServeHTTP(rw http.ResponseWriter, r *http.Request, next http.HandlerFunc)

func (*Middleware) SetLogStarting

func (m *Middleware) SetLogStarting(v bool)

SetLogStarting accepts a bool to control the logging of "started handling request" prior to passing to the next middleware

Directories

Path Synopsis
examples

Jump to

Keyboard shortcuts

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