在 CentOS 上配置 Golang 程序的日志級別,你需要遵循以下步驟:
首先,確保你已經安裝了 Golang。如果沒有,請參考 Golang 官方文檔 進行安裝。
在你的 Golang 項目中,導入 log
包并設置日志級別。例如,如果你想將日志級別設置為 Info
,你可以這樣做:
package main
import (
"log"
)
func main() {
// 設置日志級別為 Info
log.SetFlags(log.LstdFlags | log.Lshortfile)
log.Println("這是一條 Info 級別的日志")
}
Golang 支持以下日志級別:
log.Ldebug
:輸出調試信息(默認級別)log.Linfo
:輸出普通信息log.Lwarn
:輸出警告信息log.Lerror
:輸出錯誤信息log.Lfatal
:輸出致命錯誤信息并終止程序log.Lpanic
:輸出 panic 信息并終止程序os
包創建一個文件,并使用 log.SetOutput()
函數設置輸出目標:package main
import (
"log"
"os"
)
func main() {
// 設置日志級別為 Info
log.SetFlags(log.LstdFlags | log.Lshortfile)
// 創建日志文件
logFile, err := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err != nil {
log.Fatal("打開日志文件失敗:", err)
}
defer logFile.Close()
// 設置日志輸出到文件
log.SetOutput(logFile)
log.Println("這是一條 Info 級別的日志")
}
os
包讀取環境變量并進行相應的設置:package main
import (
"log"
"os"
)
func main() {
// 設置日志級別為 Info
log.SetFlags(log.LstdFlags | log.Lshortfile)
// 從環境變量中獲取日志級別
logLevel := os.Getenv("LOG_LEVEL")
if logLevel == "" {
logLevel = "info" // 默認日志級別為 Info
}
// 根據環境變量設置日志級別
switch logLevel {
case "debug":
log.SetFlags(log.LstdFlags | log.Lshortfile)
case "info":
log.SetFlags(log.LstdFlags | log.Lshortfile)
case "warn":
log.SetFlags(log.LstdFlags | log.Lshortfile)
case "error":
log.SetFlags(log.LstdFlags | log.Lshortfile)
case "fatal":
log.SetFlags(log.LstdFlags | log.Lshortfile)
case "panic":
log.SetFlags(log.LstdFlags | log.Lshortfile)
default:
log.SetFlags(log.LstdFlags | log.Lshortfile)
}
log.Println("這是一條 Info 級別的日志")
}
LOG_LEVEL
環境變量來控制日志級別:export LOG_LEVEL=info
./your_golang_program
這樣,你就可以根據需要在 CentOS 上配置 Golang 程序的日志級別了。