forked from Huawei/dockyard
-
Notifications
You must be signed in to change notification settings - Fork 1
/
logger.go
37 lines (27 loc) · 891 Bytes
/
logger.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package middleware
import (
"fmt"
"github.com/Unknwon/macaron"
"github.com/astaxie/beego/logs"
"github.com/containerops/dockyard/setting"
)
var Log *logs.BeeLogger //全局日志对象
func init() {
Log = logs.NewLogger(10000)
if setting.RunMode == "dev" {
Log.SetLogger("console", "")
}
Log.SetLogger("file", fmt.Sprintf("{\"filename\":\"%s\"}", setting.LogPath))
}
func logger() macaron.Handler {
return func(ctx *macaron.Context) {
//在调试阶段为了便于阅读控制台的信息,输出空行和分隔符区分多个访问的日志
if setting.RunMode == "dev" {
Log.Trace("")
Log.Trace("----------------------------------------------------------------------------------")
}
//默认输出 Request 的 Method、 URI 和 Header 的信息
Log.Trace("[%s] [%s]", ctx.Req.Method, ctx.Req.RequestURI)
Log.Trace("[Header] %v", ctx.Req.Header)
}
}