Add log buffer site
This commit is contained in:
33
logbuffer/logbuffer.go
Normal file
33
logbuffer/logbuffer.go
Normal file
@@ -0,0 +1,33 @@
|
||||
package logbuffer
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/gin-gonic/gin"
|
||||
"time"
|
||||
)
|
||||
|
||||
func UseLogBuffer(queue *Queue) gin.HandlerFunc {
|
||||
return gin.LoggerWithFormatter(func(param gin.LogFormatterParams) string {
|
||||
output := fmt.Sprintf("%s - [%s] \"%s %s %s %d %s \"%s\" %s\"\n",
|
||||
param.ClientIP,
|
||||
param.TimeStamp.Format(time.RFC1123),
|
||||
param.Method,
|
||||
param.Path,
|
||||
param.Request.Proto,
|
||||
param.StatusCode,
|
||||
param.Latency,
|
||||
param.Request.UserAgent(),
|
||||
param.ErrorMessage,
|
||||
)
|
||||
|
||||
// Write the output to our queue
|
||||
queue.push(output)
|
||||
queue.Limit(50)
|
||||
|
||||
// Return nothing
|
||||
return ""
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user