beego读取配置文件
[server]
listen_ip = "0.0.0.0"
listen_port = @H_403_17@8888
[logs]
log_level=debug
log_path=./logs/logagent.log
[collect]
log_path=D:\project\logs\logagent.log
topic=Nginx_log
chan_size=@H_403_17@100
package main
import (
"fmt"
"github.com/astaxie/beego/config"
)
func main() {
conf,err := config.NewConfig("ini","logagent.conf")
if err != nil {
fmt.Println("new config Failed,err:",err)
return
}
port,err:= conf.Int("server::listen_port")
if err != nil {
fmt.Println("read server:port Failed,err)
return
}
fmt.Println("port:",port)
log_level := conf.String("logs::log_level")
if len(log_level) == @H_403_17@0 {
log_level = "debug"
}
fmt.Println("log_level:",log_level)
log_path := conf.String("collect::log_path")
fmt.Println("log_path:",log_path)
}
输出如下:
PS E:\golang\go_pro\src\safly> go run demo.go
port: 8888
log_level: debug
log_path: D:\project\logs\logagent.log
PS E:\golang\go_pro\src\safly>
beego输出log文件日志
需要创建logs文件夹
package main
import (
"encoding/json"
"fmt"
"github.com/astaxie/beego/logs"
)
func main() {
//我测试如下3个路径均可
config := make(map[string]interface{})
// config["filename"] = "e:/golang/go_pro/logs/logcollect.log"
// config["filename"] = "e://golang//go_pro//logs//logcollect.log"
config["filename"] = "e:\\golang\\go_pro\\logs\\logcollect.log"
config["level"] = logs.LevelDebug
configStr,err := json.Marshal(config)
if err != nil {
fmt.Println("marshal Failed,err)
return
}
logs.SetLogger(logs.AdapterFile,string(configStr))
logs.Debug("this is a test,my name is %s","stu01")
logs.Trace("this is a trace,"stu02")
logs.Warn("this is a warn,"stu03")
}
原文链接:https://www.f2er.com/go/187668.html