From 44a57e86dd007e6ab76996b1e984c7b85167ef9f Mon Sep 17 00:00:00 2001 From: astaxie Date: Wed, 17 Aug 2016 22:05:54 +0800 Subject: [PATCH] fix #2090 --- logs/logger.go | 83 +++++++++++++------------------------------------- 1 file changed, 21 insertions(+), 62 deletions(-) diff --git a/logs/logger.go b/logs/logger.go index d74df7bf..a8333089 100644 --- a/logs/logger.go +++ b/logs/logger.go @@ -15,11 +15,11 @@ package logs import ( + "fmt" "io" + "os" "sync" "time" - "fmt" - "os" ) type logWriter struct { @@ -72,71 +72,30 @@ func NewModeAnsiColorWriter(w io.Writer, mode outputMode) io.Writer { return w } -const ( - y1 = `0000000000111111111122222222223333333333444444444455555555556666666666777777777788888888889999999999` - y2 = `0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789` - mo1 = `000000000111` - mo2 = `123456789012` - d1 = `0000000001111111111222222222233` - d2 = `1234567890123456789012345678901` - h1 = `000000000011111111112222` - h2 = `012345678901234567890123` - mi1 = `000000000011111111112222222222333333333344444444445555555555` - mi2 = `012345678901234567890123456789012345678901234567890123456789` - s1 = `000000000011111111112222222222333333333344444444445555555555` - s2 = `012345678901234567890123456789012345678901234567890123456789` -) - func formatTimeHeader(when time.Time) ([]byte, int) { - y, mo, d := when.Date() - h, mi, s := when.Clock() - //len("2006/01/02 15:04:05 ")==20 - var buf [20]byte - - //change to '3' after 984 years, LOL - buf[0] = '2' - //change to '1' after 84 years, LOL - buf[1] = '0' - buf[2] = y1[y - 2000] - buf[3] = y2[y - 2000] - buf[4] = '/' - buf[5] = mo1[mo - 1] - buf[6] = mo2[mo - 1] - buf[7] = '/' - buf[8] = d1[d - 1] - buf[9] = d2[d - 1] - buf[10] = ' ' - buf[11] = h1[h] - buf[12] = h2[h] - buf[13] = ':' - buf[14] = mi1[mi] - buf[15] = mi2[mi] - buf[16] = ':' - buf[17] = s1[s] - buf[18] = s2[s] - buf[19] = ' ' - - return buf[0:], d + _, _, d := when.Date() + s := when.Format("2006/01/02 15:04:05 ") + return []byte(s), d } 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}) - 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}) + 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}) - w32Green = string([]byte{27, 91, 52, 50, 109}) - w32White = string([]byte{27, 91, 52, 55, 109}) - w32Yellow = string([]byte{27, 91, 52, 51, 109}) - w32Red = string([]byte{27, 91, 52, 49, 109}) - w32Blue = string([]byte{27, 91, 52, 52, 109}) - w32Magenta = string([]byte{27, 91, 52, 53, 109}) - w32Cyan = string([]byte{27, 91, 52, 54, 109}) + w32Green = string([]byte{27, 91, 52, 50, 109}) + w32White = string([]byte{27, 91, 52, 55, 109}) + w32Yellow = string([]byte{27, 91, 52, 51, 109}) + w32Red = string([]byte{27, 91, 52, 49, 109}) + w32Blue = string([]byte{27, 91, 52, 52, 109}) + w32Magenta = string([]byte{27, 91, 52, 53, 109}) + w32Cyan = string([]byte{27, 91, 52, 54, 109}) - reset = string([]byte{27, 91, 48, 109}) + reset = string([]byte{27, 91, 48, 109}) ) func ColorByStatus(cond bool, code int) string { @@ -185,4 +144,4 @@ func W32Debug(msg string) { w := NewAnsiColorWriter(os.Stdout) fmt.Fprintf(w, "[beego] %v %s\n", current.Format("2006/01/02 - 15:04:05"), msg) -} \ No newline at end of file +}