docker 的log和golang runtime
docker的log在pkg/log路径下的log.go。很简单:
1. 一共4个级别Debug,Info, Error,Fatal。
2. Info是直接输出到Stdout,其他是输出到Stderr(包括debug)。Fatal输出完log会自动退出
3. 实际进行输出的是logf 函数。其中用到golang的runtime库,如下
_, file, line, ok := runtime.Caller(2)
4. runtime.Caller()
func Caller(skip int) (pc uintptr, file string, line int, ok bool)skip如果是0,返回当前调用Caller函数的函数名、文件、程序指针PC,1是上一层函数,以此类推
5. runtime.Breakpoint()
(不用IDE的时候)在程序里设置断点用,配合gdb使用
Reference:
http://blog.studygolang.com/2012/12/gdb%E8%B0%83%E8%AF%95go%E7%A8%8B%E5%BA%8F/
http://golang.org/pkg/runtime/
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。