面试题答案
一键面试在Go语言中,使用log
包自定义日志输出格式,可以通过log.SetFlags
函数来实现。以下是添加时间戳的示例代码:
package main
import (
"log"
"time"
)
func main() {
// 设置日志标志,添加时间戳
log.SetFlags(log.LstdFlags)
log.Println("这是一条带时间戳的日志")
}
在上述代码中,log.SetFlags(log.LstdFlags)
设置日志标志,LstdFlags
包含日期和时间戳。log.Println
输出的日志前就会带上时间戳。
若想自定义更复杂的格式,可以结合log.SetPrefix
和log.SetFlags
:
package main
import (
"log"
"time"
)
func main() {
// 设置日志前缀
log.SetPrefix(time.Now().Format("2006-01-02 15:04:05 ") + "[INFO] ")
// 禁用默认的时间戳标志,因为我们手动在Prefix里添加了时间
log.SetFlags(0)
log.Println("这是一条自定义格式的日志")
}
在这个示例中,通过log.SetPrefix
设置了日志前缀,包含时间戳和日志级别[INFO]
,并通过log.SetFlags(0)
禁用了默认的时间戳标志。