logging

package
v0.0.0-...-cbb82f6 Latest Latest
Warning

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

Go to latest
Published: Mar 12, 2016 License: MIT Imports: 7 Imported by: 0

README

Logging

Installation

$ go get github.com/dogenzaka/gin-tools/logging

Requirements

Tests

Example

func main() {

    r := gin.Default()
    
    r.Use(logging.AccessLogger(os.Stdout))
    r.GET("/user/:name", func(c *gin.Context) {
        name := c.Params.ByName("name")
        message := "Hello "+name
        c.String(200, message)
    })

    r.Run(":8080")
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AccessLogger

func AccessLogger(out io.Writer) gin.HandlerFunc

AccessLogger is a middleware for logging access info

func ActivityLogger

func ActivityLogger(out io.Writer, getExtra func(c *gin.Context) (string, error)) gin.HandlerFunc

ActivityLogger is a middleware for logging user action info

func ConvertToMapFromBody

func ConvertToMapFromBody(c *gin.Context) (string, error)

ConvertToMapFromBody converts to a map from a request body

func SetRecoverLoggingFailure

func SetRecoverLoggingFailure(f func(c *gin.Context))

SetRecoverLoggingFailure is a set recoverLoggingFailure

Types

type AccessLog

type AccessLog struct {
	LogInfo
	RequestBody string `json:"requestBody,omitempty"`
	Error       error  `json:"error,omitempty"`
}

AccessLog is a log information of user access

type ActivityLog

type ActivityLog struct {
	LogInfo
	RequestBody string `json:"requestBody,omitempty"`
	Extra       string `json:"extra,omitempty"`
}

ActivityLog is a log information of user action

type LogInfo

type LogInfo struct {
	ClientIP    string        `json:"ip"`
	Date        string        `json:"date"`
	Method      string        `json:"method"`
	RequestURI  string        `json:"uri"`
	Referer     string        `json:"referer,omitempty"`
	HTTPVersion string        `json:"httpVersion"`
	Size        int           `json:"size"`
	Status      int           `json:"status"`
	UserAgent   string        `json:"userAgent"`
	Latency     time.Duration `json:"latency"`
}

LogInfo is a base log information

func GenerateLogInfo

func GenerateLogInfo(c *gin.Context, start time.Time) LogInfo

GenerateLogInfo generates base log information

Jump to

Keyboard shortcuts

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