From 5fb11ccf2dbdf3ae51586667b202b7c03c5fa9cb Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期五, 27 九月 2019 14:16:27 +0800 Subject: [PATCH] logger改用公共库 --- /dev/null | 217 ------------------------------------------------------ ruleserver/personTrack.go | 1 ruleserver/timeTicker.go | 1 3 files changed, 0 insertions(+), 219 deletions(-) diff --git a/logger/logger.go b/logger/logger.go deleted file mode 100644 index 125d649..0000000 --- a/logger/logger.go +++ /dev/null @@ -1,217 +0,0 @@ -package logger - -import ( - "fmt" - "log" - "os" - "os/exec" - "strings" - "time" -) - -const ( - PanicLevel int = iota - FatalLevel - ErrorLevel - WarnLevel - InfoLevel - DebugLevel -) - -const ( - color_red = uint8(iota + 91) - color_green // 缁� - color_yellow // 榛� - color_blue // 钃� - color_magenta // 娲嬬孩 -) - -const ( - fatalPrefix = "[FATAL] " - errorPrefix = "[ERROR] " - warnPrefix = "[WARN] " - infoPrefix = "[INFO] " - debugPrefix = "[DEBUG] " -) - -const ( - ByDay int = iota - ByWeek - ByMonth - BySize -) - -type LogFile struct { - level int // 鏃ュ織绛夌骇 - saveMode int // 淇濆瓨妯″紡 - saveDays int // 鏃ュ織淇濆瓨澶╂暟 - logTime int64 // - fileName string // 鏃ュ織鏂囦欢鍚� - filesize int64 // 鏂囦欢澶у皬, 闇�瑕佽缃� saveMode 涓� BySize 鐢熸晥 - fileFd *os.File -} - -var logFile LogFile - -func init() { - logFile.saveMode = ByDay // 榛樿鎸夊ぉ淇濆瓨 - logFile.saveDays = 7 // 榛樿淇濆瓨涓夊ぉ鐨� - logFile.level = DebugLevel - //logFile.filesize = 1024 * 1024 * 10 // 榛樿10M锛� 闇�瑕佽缃� saveMode 涓� BySize -} - -func Config(logFolder string, level int) { - logFile.fileName = logFolder - logFile.level = level - - log.SetOutput(logFile) - //log.SetFlags(log.Lmicroseconds | log.Lshortfile) - log.SetFlags(log.Ldate | log.Ltime) -} -func GetLogFile() (*LogFile) { - return &logFile -} - -func SetLevel(level int) { - logFile.level = level -} - -func SetSaveMode(saveMode int) { - logFile.saveMode = saveMode -} - -func SetSaveDays(saveDays int) { - logFile.saveDays = saveDays -} - -func SetSaveSize(saveSize int64) { - logFile.filesize = saveSize -} - -func Debug(args ...interface{}) { - if logFile.level >= DebugLevel { - log.SetPrefix(blue(debugPrefix)) - _ = log.Output(2, fmt.Sprintln(args...)) - } -} - -func Info(args ...interface{}) { - if logFile.level >= InfoLevel { - log.SetPrefix(green(infoPrefix)) - _ = log.Output(2, fmt.Sprintln(args...)) - } -} - -func Warn(args ...interface{}) { - if logFile.level >= WarnLevel { - log.SetPrefix(magenta(warnPrefix)) - _ = log.Output(2, fmt.Sprintln(args...)) - } -} - -func Error(args ...interface{}) { - if logFile.level >= ErrorLevel { - log.SetPrefix(red(errorPrefix)) - _ = log.Output(2, fmt.Sprintln(args...)) - } -} - -func Fatal(args ...interface{}) { - if logFile.level >= FatalLevel { - log.SetPrefix(red(fatalPrefix)) - _ = log.Output(2, fmt.Sprintln(args...)) - } -} - -func GetRedPrefix(s string) string { - return fmt.Sprintf("\x1b[%dm%s\x1b[0m", color_red, s) -} - -func red(s string) string { - return fmt.Sprintf("\x1b[%dm%s\x1b[0m", color_red, s) -} - -func green(s string) string { - return fmt.Sprintf("\x1b[%dm%s\x1b[0m", color_green, s) -} - -func yellow(s string) string { - return fmt.Sprintf("\x1b[%dm%s\x1b[0m", color_yellow, s) -} - -func blue(s string) string { - return fmt.Sprintf("\x1b[%dm%s\x1b[0m", color_blue, s) -} - -func magenta(s string) string { - return fmt.Sprintf("\x1b[%dm%s\x1b[0m", color_magenta, s) -} - -func (me LogFile) Write(buf []byte) (n int, err error) { - if me.fileName == "" { - fmt.Printf("consol: %s", buf) - return len(buf), nil - } - - switch logFile.saveMode { - case BySize: - fileInfo, err := os.Stat(logFile.fileName) - if err != nil { - logFile.createLogFile() - logFile.logTime = time.Now().Unix() - }else { - filesize:= fileInfo.Size(); - if logFile.fileFd == nil || - filesize > logFile.filesize { - logFile.createLogFile() - logFile.logTime = time.Now().Unix() - } - } - default: // 榛樿鎸夊ぉ ByDay - if logFile.logTime+3600 < time.Now().Unix() { - logFile.createLogFile() - logFile.logTime = time.Now().Unix() - } - } - - if logFile.fileFd == nil { - fmt.Printf("log fileFd is nil !\n") - return len(buf), nil - } - - return logFile.fileFd.Write(buf) -} - -func (me *LogFile) createLogFile() { - logdir := "./" - if index := strings.LastIndex(me.fileName, "/"); index != -1 { - logdir = me.fileName[0:index] + "/" - os.MkdirAll(me.fileName[0:index], os.ModePerm) - } - - now := time.Now() - filename := fmt.Sprintf("%s_%04d%02d%02d", - me.fileName, now.Year(), now.Month(), now.Day()) - if err := os.Rename(me.fileName, filename); err == nil { - go func() { - tarCmd := exec.Command("tar", "-zcf", filename+".tar.gz", filename, "--remove-files") - tarCmd.Run() - - rmCmd := exec.Command("/bin/sh", "-c", - "find "+logdir+` -type f -mtime +` +string(logFile.saveDays)+ ` -exec rm {} \;`) - rmCmd.Run() - }() - } - - for index := 0; index < 10; index++ { - if fd, err := os.OpenFile(me.fileName, os.O_CREATE|os.O_APPEND|os.O_WRONLY, os.ModeExclusive); nil == err { - me.fileFd.Sync() - me.fileFd.Close() - me.fileFd = fd - break - }else { - fmt.Println("Open logfile error! err: ", err.Error()) - } - me.fileFd = nil - } -} \ No newline at end of file diff --git a/ruleserver/personTrack.go b/ruleserver/personTrack.go index b9664f9..eaaf927 100644 --- a/ruleserver/personTrack.go +++ b/ruleserver/personTrack.go @@ -4,7 +4,6 @@ "basic.com/pubsub/protomsg.git" "github.com/golang/protobuf/proto" "basic.com/valib/logger.git" - "ruleprocess/logger" ) var TrackPond = make(map[string]*PersonTrack) diff --git a/ruleserver/timeTicker.go b/ruleserver/timeTicker.go index 218979e..3913b20 100644 --- a/ruleserver/timeTicker.go +++ b/ruleserver/timeTicker.go @@ -3,7 +3,6 @@ import ( "fmt" "basic.com/valib/logger.git" - "ruleprocess/logger" "strings" "time" ) -- Gitblit v1.8.0