如何在App Engine Go日志中自动记录功能/行号?

时间:2014-07-02 18:13:47

标签: google-app-engine logging go line-numbers

我已经编写了许多GAE Golang应用程序,而且我对目前的日志记录方法并不满意。我似乎无法找到一种简单的方法来记录行号,甚至是在App Engine中创建日志的功能。是否有一些自动创建这种有意义的日志的方法?目前我只是手动编号我的错误,如:

c.Debugf("Backend - Upkeep error 5 - %v", err)

1 个答案:

答案 0 :(得分:4)

您需要创建自己的函数并使用runtime.Caller

工作示例:http://play.golang.org/p/CQghRzJ3x_

func debug(format string, args ...interface{}) {
    _, file, line, ok := runtime.Caller(1)
    if !ok {
        file = "???"
        line = 0
    }
    log.Printf(file+":"+strconv.Itoa(line)+" - "+format, args...)
}