41 lines
961 B
Go
41 lines
961 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"github.com/op/go-logging"
|
|
"os"
|
|
)
|
|
|
|
var log = logging.MustGetLogger("")
|
|
var logFormat = logging.MustStringFormatter("%{time:2006-01-02 15:04:05.000} [%{level}] %{message}")
|
|
|
|
var backendConsole = logging.NewLogBackend(os.Stdout, "", 0)
|
|
|
|
func initLog() {
|
|
logging.SetFormatter(logFormat)
|
|
|
|
logging.SetBackend(backendConsole)
|
|
}
|
|
|
|
func initLogFile(logFile string, level logging.Level) {
|
|
file, err := os.OpenFile(logFile, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0600)
|
|
|
|
if err != nil {
|
|
log.Error("Failed to initialize log file: " + fmt.Sprint(err))
|
|
|
|
return
|
|
}
|
|
|
|
backendFile := logging.NewLogBackend(file, "", 0)
|
|
|
|
backendFileLeveled := logging.AddModuleLevel(backendFile)
|
|
backendFileLeveled.SetLevel(level, "")
|
|
|
|
backendConsoleLeveled := logging.AddModuleLevel(backendConsole)
|
|
backendConsoleLeveled.SetLevel(level, "")
|
|
|
|
logging.SetBackend(backendConsoleLeveled, backendFileLeveled)
|
|
|
|
log.Debug("Successfully initialized log file")
|
|
}
|