google-app-engine - 如何在 App Engine Go 日志中自动记录函数/行号?

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

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

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

最佳答案

您需要创建自己的函数并使用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...)
}

关于google-app-engine - 如何在 App Engine Go 日志中自动记录函数/行号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24538207/

相关文章:

java - 为什么要在 App Engine 上设置系统属性(例如 java.vm.specation.version)?

python - 上传文件在谷歌应用程序引擎中不起作用

linux - 可以看到Wordpress登录访问日志吗?

logging - Spring Cloud Logging 的最佳方法是什么?

post - Golang HTTP 发布错误 : connection refused

go - 什么是 C 的三元运算符的惯用 Go 等价物?

Golang panic : runtime error: invalid memory address or nil pointer dereference

google-app-engine - 在 GAE、Java、JDO 等上下文中,DAO 是什么?

python - 使用 Docker 在 Google App Engine Flex 上部署 Flask 应用程序

ruby-on-rails - 可以从 Rack 中间件中访问 Rails 记录器吗?