(feature)add http method log-color,like http response status code
This commit is contained in:
		
							
								
								
									
										37
									
								
								logger.go
									
									
									
									
									
								
							
							
						
						
									
										37
									
								
								logger.go
									
									
									
									
									
								
							@ -27,11 +27,14 @@ func ErrorLoggerT(typ uint32) HandlerFunc {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	green  = string([]byte{27, 91, 57, 55, 59, 52, 50, 109})
 | 
			
		||||
	white  = string([]byte{27, 91, 57, 48, 59, 52, 55, 109})
 | 
			
		||||
	yellow = string([]byte{27, 91, 57, 55, 59, 52, 51, 109})
 | 
			
		||||
	red    = string([]byte{27, 91, 57, 55, 59, 52, 49, 109})
 | 
			
		||||
	reset  = string([]byte{27, 91, 48, 109})
 | 
			
		||||
	green   = string([]byte{27, 91, 57, 55, 59, 52, 50, 109})
 | 
			
		||||
	white   = string([]byte{27, 91, 57, 48, 59, 52, 55, 109})
 | 
			
		||||
	yellow  = string([]byte{27, 91, 57, 55, 59, 52, 51, 109})
 | 
			
		||||
	red     = string([]byte{27, 91, 57, 55, 59, 52, 49, 109})
 | 
			
		||||
	blue    = string([]byte{27, 91, 57, 55, 59, 52, 52, 109})
 | 
			
		||||
	magenta = string([]byte{27, 91, 57, 55, 59, 52, 53, 109})
 | 
			
		||||
	cyan    = string([]byte{27, 91, 57, 55, 59, 52, 54, 109})
 | 
			
		||||
	reset   = string([]byte{27, 91, 48, 109})
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func Logger() HandlerFunc {
 | 
			
		||||
@ -68,14 +71,34 @@ func Logger() HandlerFunc {
 | 
			
		||||
		default:
 | 
			
		||||
			color = red
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		var methodColor string
 | 
			
		||||
		method := c.Request.Method
 | 
			
		||||
		switch {
 | 
			
		||||
		case method == "GET":
 | 
			
		||||
			methodColor = blue
 | 
			
		||||
		case method == "POST":
 | 
			
		||||
			methodColor = cyan
 | 
			
		||||
		case method == "PUT":
 | 
			
		||||
			methodColor = yellow
 | 
			
		||||
		case method == "DELETE":
 | 
			
		||||
			methodColor = red
 | 
			
		||||
		case method == "PATCH":
 | 
			
		||||
			methodColor = green
 | 
			
		||||
		case method == "HEAD":
 | 
			
		||||
			methodColor = magenta
 | 
			
		||||
		case method == "OPTIONS":
 | 
			
		||||
			methodColor = white
 | 
			
		||||
		}
 | 
			
		||||
		end := time.Now()
 | 
			
		||||
		latency := end.Sub(start)
 | 
			
		||||
		stdlogger.Printf("[GIN] %v |%s %3d %s| %12v | %s %4s %s\n%s",
 | 
			
		||||
		stdlogger.Printf("[GIN] %v |%s %3d %s| %12v | %s |%s %4s %s| %s\n%s",
 | 
			
		||||
			end.Format("2006/01/02 - 15:04:05"),
 | 
			
		||||
			color, code, reset,
 | 
			
		||||
			latency,
 | 
			
		||||
			requester,
 | 
			
		||||
			c.Request.Method, c.Request.URL.Path,
 | 
			
		||||
			methodColor, method, reset,
 | 
			
		||||
			c.Request.URL.Path,
 | 
			
		||||
			c.Errors.String(),
 | 
			
		||||
		)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user