我从 golang 开始,当我开始构建我的应用程序时,我想从一开始就添加日志记录,这就是我遇到问题的地方。
如果我打开一个文件并使用标准日志库,我就可以写入文件。像这样。
package main
import (
"os"
"fmt"
"log"
)
func main() {
// open a file
f, err := os.OpenFile("test.log", os.O_APPEND | os.O_CREATE | os.O_RDWR, 0666)
if err != nil {
fmt.Printf("error opening file: %v", err)
}
// don't forget to close it
defer f.Close()
// assign it to the standard logger
log.SetOutput(f)
log.Output(1, "this is an event")
}
我将获得带有日志行的 test.log。但是,如果我尝试调整它以支持 logrus https://github.com/Sirupsen/logrus这样
package main
import (
"os"
"fmt"
log "github.com/Sirupsen/logrus"
)
func init() {
// open a file
f, err := os.OpenFile("testlogrus.log", os.O_APPEND | os.O_CREATE | os.O_RDWR, 0666)
if err != nil {
fmt.Printf("error opening file: %v", err)
}
// don't forget to close it
defer f.Close()
// Log as JSON instead of the default ASCII formatter.
log.SetFormatter(&log.JSONFormatter{})
// Output to stderr instead of stdout, could also be a file.
log.SetOutput(f)
// Only log the warning severity or above.
log.SetLevel(log.DebugLevel)
}
func main() {
log.WithFields(log.Fields{
"Animal": "Logrus",
}).Info("A logrus appears")
}
我将看到的只是错误。
无法写入日志,写入 testlogrus.log:文件描述符错误
我得到的只是错误的文件描述符错误。任何想法我做错了什么?
饮歌长啸
牛魔王的故事
慕侠2389804
相关分类