package main import ( "fmt" "io" "os" "fyne.io/fyne/v2/app" "github.com/sirupsen/logrus" "legu.airobot/busi/friend" "legu.airobot/lib" "legu.airobot/theme" ) func init() { var err error if err = setupLogger(); err != nil { fmt.Println(err) os.Exit(1) } } func main() { app := app.NewWithID("aiRobot") app.SetIcon(theme.ResourceAppPng) a := lib.NewAI() a.InitCaller( &friend.FriendRecommend{Desc: "好友推荐"}, &friend.FriendApply{Desc: "好友申请"}, ) } func setupLogger() (err error) { logrus.SetFormatter(&logrus.JSONFormatter{ TimestampFormat: "2006-01-02 15:04:05", // DisableColors: true, // FullTimestamp: true, }) logrus.SetLevel(logrus.DebugLevel) logrus.SetOutput(os.Stdout) //设置output,默认为stderr,可以为任何io.Writer,比如文件*os.File file, err := os.OpenFile("robot.log", os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0666) writers := []io.Writer{ file, os.Stdout} //同时写文件和屏幕 fileAndStdoutWriter := io.MultiWriter(writers...) if err == nil { logrus.SetOutput(fileAndStdoutWriter) } else { logrus.Fatal("failed to log to file.") } return nil }