Переглянути джерело

Enable and customize logging.

Frederic G. MARAND 8 роки тому
батько
коміт
7a2548ff1f
1 змінених файлів з 21 додано та 6 видалено
  1. 21 6
      main.go

+ 21 - 6
main.go

@@ -25,23 +25,38 @@ import (
 	"github.com/go-xorm/xorm"
 
 	// Others.
-	"github.com/davecgh/go-spew/spew"
+	// "github.com/davecgh/go-spew/spew"
 )
 
 var engine *xorm.Engine
 
+func check(err error) {
+	if err != nil {
+		fmt.Println(err.Error())
+		os.Exit(1)
+	}
+}
+
 func main() {
 	var err error
 
 	// NewEngine parameters are those of the SQL driver: driver and DSN.
 	engine, err := xorm.NewEngine("sqlite3", "./test.db")
-	if err != nil {
-		panic(err)
-		os.Exit(1)
-	}
+	check(err)
 	fmt.Println("ORM loaded")
 
-	spew.Dump(engine)
+	// Enable built-in Logging features.
+	engine.ShowSQL = true
+	engine.ShowDebug = true
+	engine.ShowErr = true
+	engine.ShowWarn = true
+
+	// Optional: declare a custom logger.
+	f, err := os.Create("sql.log")
+	check(err)
+	engine.SetLogger(xorm.NewSimpleLogger(f))
+
 	// Not needed: called automatically on exit.
 	engine.Close()
+	fmt.Println("ORM closed")
 }