如何在main之外使用Logger

时间:2013-10-05 14:48:01

标签: go

我正在使用logger包github.com/jcelliott/lumber登录go,我声明并使用它:

func main() {
log := lumber.NewConsoleLogger(lumber.DEBUG)
...
log.Error("File error: %v\n", e)
}

如何从main以外的功能登录?显然这里的log是在main中声明的并且限制了它的范围,但是我还没有找到在GO中使用全局变量的方法,是否有比在每个函数中重新声明记录器更好的方法?

1 个答案:

答案 0 :(得分:4)

声明你的全局变量:

var log lumber.Logger

func anyFunc() {
  log.Error("File error: %v\n", e)
}

func main() {
  log = lumber.NewConsoleLogger(lumber.DEBUG)
  anyFunc()
}