duansang8388 2012-05-13 08:51
浏览 36
已采纳

使用Go的日志包以默认格式设置PANIC

When logging in Go with log.Println, I frequently get

2012/05/13 16:45:50 evaluating %v(PANIC=3)

I'm not sure how to determine what I've done wrong, I assume that somewhere fmt.Println has caught a panic generated by one of my own Stringer interface implementations, so as not to crash my program due to logging failure.

How do I work out what's going on? Why am I getting this erroneous message?

  • 写回答

2条回答 默认 最新

  • dpkiubcc265650 2012-05-13 09:29
    关注

    You are right, there is a panic in a String method. But it has nothing to do with the log package. Println uses %v, and %v means running String method. Having a panic in the String method invokes catchPanic. Here in your output 3 is the value of your panic.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?