Go-标准库-log(一)

2023-04-22 09:07:43 浏览数 (1)

Go语言标准库中的log包提供了一组简单但功能强大的日志记录功能,用于在Go应用程序中生成日志信息。该包提供了多种记录级别,以及可定制化的日志记录格式。

基本使用

log包中提供了三个输出方法:Print、Printf和Println。这些方法会将日志信息输出到标准错误输出流中。

代码语言:javascript复制
package main

import (
    "log"
)

func main() {
    log.Print("This is a log message.")
    log.Printf("This is a formatted log message with an integer: %d", 123)
    log.Println("This is a log message with a new line.")
}

在上面的示例中,我们通过log包的Print、Printf和Println方法输出了三种不同格式的日志信息。输出结果如下所示:

代码语言:javascript复制
2023/04/22 10:34:08 This is a log message.
2023/04/22 10:34:08 This is a formatted log message with an integer: 123
2023/04/22 10:34:08 This is a log message with a new line.

输出信息包含了日期和时间、日志级别以及日志内容。默认情况下,log包输出的日志级别是“info”。

如果需要记录不同级别的日志信息,可以使用log包提供的SetOutput方法来更改输出流,并使用log包提供的SetPrefix方法来设置前缀信息。

代码语言:javascript复制
package main

import (
    "log"
    "os"
)

func main() {
    log.SetOutput(os.Stdout)
    log.SetPrefix("DEBUG: ")
    log.Println("This is a debug message.")
}

在上面的示例中,我们使用SetOutput方法将输出流更改为标准输出流,并使用SetPrefix方法将前缀信息设置为“DEBUG: ”。输出结果如下所示:

代码语言:javascript复制
DEBUG: 2023/04/22 10:45:30 This is a debug message.
go

0 人点赞