1
0
mirror of https://github.com/astaxie/beego.git synced 2025-07-15 09:01:01 +00:00

finish logs module

This commit is contained in:
astaxie
2013-08-27 23:48:58 +08:00
parent 49bbca0ce3
commit f92973794e
9 changed files with 788 additions and 0 deletions

47
logs/console.go Normal file
View File

@ -0,0 +1,47 @@
package logs
import (
"encoding/json"
"log"
"os"
)
type ConsoleWriter struct {
lg *log.Logger
level int
}
func NewConsole() LoggerInterface {
cw := new(ConsoleWriter)
cw.lg = log.New(os.Stdout, "", log.Ldate|log.Ltime)
cw.level = LevelTrace
return cw
}
func (c *ConsoleWriter) Init(jsonconfig string) error {
var m map[string]interface{}
err := json.Unmarshal([]byte(jsonconfig), &m)
if err != nil {
return err
}
if lv, ok := m["level"]; ok {
c.level = int(lv.(float64))
}
return nil
}
func (c *ConsoleWriter) WriteMsg(msg string, level int) error {
if level < c.level {
return nil
}
c.lg.Println(msg)
return nil
}
func (c *ConsoleWriter) Destroy() {
}
func init() {
Register("console", NewConsole)
}