mirror of
https://github.com/gin-gonic/gin.git
synced 2025-10-15 21:06:39 +08:00
Merge 40991b4a82e4678ae5add25af7bb2c45213af929 into a64286a7760be2031209686ce4d36e99d42dd419
This commit is contained in:
commit
fe06083aaa
@ -236,13 +236,14 @@ func LoggerWithConfig(conf LoggerConfig) HandlerFunc {
|
|||||||
// Start timer
|
// Start timer
|
||||||
start := time.Now()
|
start := time.Now()
|
||||||
path := c.Request.URL.Path
|
path := c.Request.URL.Path
|
||||||
|
fullPath := c.FullPath()
|
||||||
raw := c.Request.URL.RawQuery
|
raw := c.Request.URL.RawQuery
|
||||||
|
|
||||||
// Process request
|
// Process request
|
||||||
c.Next()
|
c.Next()
|
||||||
|
|
||||||
// Log only when path is not being skipped
|
// Log only when fullPath is not being skipped
|
||||||
if _, ok := skip[path]; !ok {
|
if _, ok := skip[fullPath]; !ok {
|
||||||
param := LogFormatterParams{
|
param := LogFormatterParams{
|
||||||
Request: c.Request,
|
Request: c.Request,
|
||||||
isTerm: isTerm,
|
isTerm: isTerm,
|
||||||
|
@ -385,16 +385,26 @@ func TestErrorLogger(t *testing.T) {
|
|||||||
func TestLoggerWithWriterSkippingPaths(t *testing.T) {
|
func TestLoggerWithWriterSkippingPaths(t *testing.T) {
|
||||||
buffer := new(strings.Builder)
|
buffer := new(strings.Builder)
|
||||||
router := New()
|
router := New()
|
||||||
router.Use(LoggerWithWriter(buffer, "/skipped"))
|
router.Use(LoggerWithWriter(buffer, "/skipped", "/skippedUsers/:id"))
|
||||||
router.GET("/logged", func(c *Context) {})
|
router.GET("/logged", func(c *Context) {})
|
||||||
|
router.GET("/loggedUsers/:id", func(c *Context) {})
|
||||||
router.GET("/skipped", func(c *Context) {})
|
router.GET("/skipped", func(c *Context) {})
|
||||||
|
router.GET("/skippedUsers/:id", func(c *Context) {})
|
||||||
|
|
||||||
PerformRequest(router, "GET", "/logged")
|
PerformRequest(router, "GET", "/logged")
|
||||||
assert.Contains(t, buffer.String(), "200")
|
assert.Contains(t, buffer.String(), "200")
|
||||||
|
|
||||||
|
buffer.Reset()
|
||||||
|
PerformRequest(router, "GET", "/loggedUsers/2")
|
||||||
|
assert.Contains(t, buffer.String(), "200")
|
||||||
|
|
||||||
buffer.Reset()
|
buffer.Reset()
|
||||||
PerformRequest(router, "GET", "/skipped")
|
PerformRequest(router, "GET", "/skipped")
|
||||||
assert.Contains(t, buffer.String(), "")
|
assert.Equal(t, "", buffer.String())
|
||||||
|
|
||||||
|
buffer.Reset()
|
||||||
|
PerformRequest(router, "GET", "/skippedUsers/3")
|
||||||
|
assert.Equal(t, "", buffer.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestLoggerWithConfigSkippingPaths(t *testing.T) {
|
func TestLoggerWithConfigSkippingPaths(t *testing.T) {
|
||||||
@ -402,17 +412,27 @@ func TestLoggerWithConfigSkippingPaths(t *testing.T) {
|
|||||||
router := New()
|
router := New()
|
||||||
router.Use(LoggerWithConfig(LoggerConfig{
|
router.Use(LoggerWithConfig(LoggerConfig{
|
||||||
Output: buffer,
|
Output: buffer,
|
||||||
SkipPaths: []string{"/skipped"},
|
SkipPaths: []string{"/skipped", "/skippedUsers/:id"},
|
||||||
}))
|
}))
|
||||||
router.GET("/logged", func(c *Context) {})
|
router.GET("/logged", func(c *Context) {})
|
||||||
|
router.GET("/loggedUsers/:id", func(c *Context) {})
|
||||||
router.GET("/skipped", func(c *Context) {})
|
router.GET("/skipped", func(c *Context) {})
|
||||||
|
router.GET("/skippedUsers/:id", func(c *Context) {})
|
||||||
|
|
||||||
PerformRequest(router, "GET", "/logged")
|
PerformRequest(router, "GET", "/logged")
|
||||||
assert.Contains(t, buffer.String(), "200")
|
assert.Contains(t, buffer.String(), "200")
|
||||||
|
|
||||||
|
buffer.Reset()
|
||||||
|
PerformRequest(router, "GET", "/loggedUsers/2")
|
||||||
|
assert.Contains(t, buffer.String(), "200")
|
||||||
|
|
||||||
buffer.Reset()
|
buffer.Reset()
|
||||||
PerformRequest(router, "GET", "/skipped")
|
PerformRequest(router, "GET", "/skipped")
|
||||||
assert.Contains(t, buffer.String(), "")
|
assert.Equal(t, "", buffer.String())
|
||||||
|
|
||||||
|
buffer.Reset()
|
||||||
|
PerformRequest(router, "GET", "/skippedUsers/3")
|
||||||
|
assert.Equal(t, "", buffer.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestDisableConsoleColor(t *testing.T) {
|
func TestDisableConsoleColor(t *testing.T) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user