package main import ( "fmt" "io/ioutil" "os" "time" "github.com/Sirupsen/logrus" "github.com/gin-gonic/contrib/ginrus" "github.com/gin-gonic/gin" ) func main() { r := gin.New() // Add a ginrus middleware, which: // - Logs all requests, like a combined access and error log. // - Logs to stdout. // - RFC3339 with UTC time format. r.Use(ginrus.Ginrus(logrus.StandardLogger(), time.RFC3339, true)) // Add similar middleware, but: // - Only logs requests with errors, like an error log. // - Logs to stderr instead of stdout. // - Local time zone instead of UTC. logger := logrus.New() logger.Level = logrus.ErrorLevel logger.SetOutput(os.Stderr) r.Use(ginrus.Ginrus(logger, time.RFC3339, false)) // Example ping request. r.GET("/ping", func(c *gin.Context) { c.String(200, "pong "+fmt.Sprint(time.Now().Unix())) }) // Listen and Server in 0.0.0.0:8080 r.Run(":8080") }