打开docker的调试日志选项及为调试日志添加文件名和行号

看代码时,有时我们会需要验证我们对于程序逻辑的想法,于是我们会加一些调试日志,以帮助我们确认正确的程序逻辑。docker在代码中加了调试日志,只要在运行时加-D选项即可。但是这些调试日志是没有位置信息的。为了方便我们了解程序逻辑,我们为调试日志加上位置信息(文件名,函数名,行号等)。
在文件docker/vendor/src/github.com/Sirupsen/logrus/exported.go:
以Debugf 函数为例子

// Debugf logs a message at level Debug on the standard logger.
func Debugf(format string, args ...interface{}) {
    _, file, line, ok := runtime.Caller(1)
    if !ok {
        file = "???"
        line = 0
    }
    _, filename := path.Split(file)
    format = "[" + filename + ":" + strconv.FormatInt(int64(line), 10) + "] " + format
    std.Debugf(format, args...)
}

这样打印日志是就有打印调用地方文件名和行号了
打开docker的调试日志选项及为调试日志添加文件名和行号_第1张图片

你可能感兴趣的:(docker学习)