在Golang中,我們可以使用標準庫"log"來實現日志輸出。要在CentOS上自定義日志輸出,你可以按照以下步驟操作:
import (
"log"
"os"
)
func createLogFile(logFileName string) (*os.File, error) {
logFile, err := os.OpenFile(logFileName, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err != nil {
return nil, err
}
return logFile, nil
}
func setLogFileOutput(logFile *os.File) {
log.SetOutput(logFile)
}
func main() {
logFileName := "/var/log/myapp.log"
logFile, err := createLogFile(logFileName)
if err != nil {
log.Fatalf("Error creating log file: %v", err)
}
defer logFile.Close()
setLogFileOutput(logFile)
log.Println("This is a custom log message.")
}
這樣,日志就會輸出到你指定的文件(在這個例子中是/var/log/myapp.log)。
如果你想要自定義日志的格式,可以使用log.SetFlags()函數。例如,你可以設置日志包含日期、時間和文件名等信息:
func setLogFlags() {
log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
}
然后在主函數中調用setLogFlags()函數:
func main() {
// ...
setLogFileOutput(logFile)
setLogFlags()
log.Println("This is a custom log message.")
}
現在,日志輸出將包含日期、時間和文件名等信息。你可以根據需要自定義日志格式。