Browse Source

Add check for log directory.

Grant Yin 5 years ago
parent
commit
77a1ff1d29
2 changed files with 20 additions and 0 deletions
  1. 6 0
      QMPlusServer/init/qmlog/qmlog.go
  2. 14 0
      QMPlusServer/tools/directory.go

+ 6 - 0
QMPlusServer/init/qmlog/qmlog.go

@@ -6,6 +6,7 @@ import (
 	rotatelogs "github.com/lestrrat/go-file-rotatelogs"
 	"github.com/rifflock/lfshook"
 	"github.com/sirupsen/logrus"
+	"main/tools"
 	"os"
 	"time"
 )
@@ -19,6 +20,11 @@ func InitLog() *logrus.Logger{
 	}
 	QMLog.Out = src
 	QMLog.SetLevel(logrus.DebugLevel)
+	if ok, _ := tools.PathExists("./log"); !ok {
+		// Directory not exist
+		fmt.Println("Create log.")
+		os.Mkdir("log", os.ModePerm)
+	}
 	apiLogPath := "./log/api.log"
 	logWriter, err := rotatelogs.New(
 		apiLogPath+".%Y-%m-%d-%H-%M.log",

+ 14 - 0
QMPlusServer/tools/directory.go

@@ -0,0 +1,14 @@
+package tools
+
+import "os"
+
+func PathExists(path string) (bool, error) {
+	_, err := os.Stat(path)
+	if err == nil {
+		return true, nil
+	}
+	if os.IsNotExist(err) {
+		return false, nil
+	}
+	return false, err
+}