在 Go 语言中,日志级别可以通过 log
包进行设置。log
包提供了以下日志级别:DEBUG、INFO、WARN、ERROR、FATAL 和 OFF。在程序初始化时,可以通过 log.SetOutput()
和 log.SetFlags()
函数来调整日志输出级别和格式。
以下是一个示例代码片段,展示如何在 Go 程序中设置日志级别:
package main
import (
"log"
"os"
)
func main() {
// 设置日志输出到标准输出
log.SetOutput(os.Stdout)
// 设置日志格式为带有文件名和行号的输出
log.SetFlags(log.LstdFlags | log.Lshortfile)
// 输出不同级别的日志
log.Println("这是一条 INFO 级别的日志")
log.Println("这是一条 WARN 级别的日志")
log.Println("这是一条 ERROR 级别的日志")
}
在上面的代码中,log.SetOutput(os.Stdout)
将日志输出设置为标准输出,log.SetFlags(log.LstdFlags | log.Lshortfile)
设置了日志格式为带有文件名和行号的输出。然后,程序使用不同级别的日志函数输出日志消息。
除了使用 log
包进行基本的日志级别设置外,还可以考虑使用一些第三方日志库,如 logrus 或 zap,这些库通常提供了更丰富的功能和更好的性能。例如,使用 logrus 设置日志级别的示例代码如下:
package main
import (
"github.com/sirupsen/logrus"
)
func main() {
// 创建一个新的 logrus 日志记录器实例
logger := logrus.New()
// 设置日志级别
logger.SetLevel(logrus.InfoLevel)
// 输出日志消息
logger.WithFields(logrus.Fields{
"animal": "walrus",
"size": 10,
}).Info("A group of walrus emerges from the ocean")
}
在上面的代码中,logger.SetLevel(logrus.InfoLevel)
设置了日志级别为 INFO,因此只有 INFO 级别及以上的日志消息会被输出。
总的来说,设置日志级别的技巧包括:
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: linux如何创建组