我正在使用logger包github.com/jcelliott/lumber登录go,我声明并使用它:
func main() {
log := lumber.NewConsoleLogger(lumber.DEBUG)
...
log.Error("File error: %v\n", e)
}
如何从main以外的功能登录?显然这里的log是在main中声明的并且限制了它的范围,但是我还没有找到在GO中使用全局变量的方法,是否有比在每个函数中重新声明记录器更好的方法?
答案 0 :(得分:4)
声明你的全局变量:
var log lumber.Logger
func anyFunc() {
log.Error("File error: %v\n", e)
}
func main() {
log = lumber.NewConsoleLogger(lumber.DEBUG)
anyFunc()
}