63 lines
1.4 KiB
Go
63 lines
1.4 KiB
Go
|
|
package golog
|
||
|
|
|
||
|
|
import (
|
||
|
|
"os"
|
||
|
|
"log"
|
||
|
|
"io/fs"
|
||
|
|
|
||
|
|
// xconfig "dbmanager/internal/xconfig"
|
||
|
|
)
|
||
|
|
|
||
|
|
type FlexiLog struct {
|
||
|
|
Handler *log.Logger
|
||
|
|
perm fs.FileMode
|
||
|
|
path string
|
||
|
|
}
|
||
|
|
|
||
|
|
func GetLogger(path string) (*FlexiLog) {
|
||
|
|
|
||
|
|
fl := new (FlexiLog)
|
||
|
|
|
||
|
|
//cfg := xconfig.GetConfig()
|
||
|
|
|
||
|
|
lh, err := os.OpenFile(path, os.O_CREATE|os.O_APPEND|os.O_RDWR, 0644)
|
||
|
|
if err != nil {
|
||
|
|
log.Fatalf(path + " is not writable. Exiting.")
|
||
|
|
}
|
||
|
|
|
||
|
|
fl.Handler = log.New(lh, "", log.Ldate | log.Lmicroseconds | log.Llongfile)
|
||
|
|
fl.Handler.SetOutput(lh)
|
||
|
|
fl.Handler.SetFlags(log.Ldate | log.Lmicroseconds | log.Llongfile)
|
||
|
|
|
||
|
|
/*if cfg.Log_level == "emerg" {
|
||
|
|
fl.Handler.SetPrefix("EMERG: ")
|
||
|
|
} else if cfg.Log_level == "alert" {
|
||
|
|
fl.Handler.SetPrefix("ALERT: ")
|
||
|
|
} else if cfg.Log_level == "critical" {
|
||
|
|
fl.Handler.SetPrefix("CRITICAL: ")
|
||
|
|
} else if cfg.Log_level == "error" {
|
||
|
|
fl.Handler.SetPrefix("ERROR: ")
|
||
|
|
} else if cfg.Log_level == "warning" {
|
||
|
|
fl.Handler.SetPrefix("WARNING: ")
|
||
|
|
} else if cfg.Log_level == "notice" {
|
||
|
|
fl.Handler.SetPrefix("NOTICE: ")
|
||
|
|
} else if cfg.Log_level == "info" {
|
||
|
|
fl.Handler.SetPrefix("INFO: ")
|
||
|
|
} else if cfg.Log_level == "debug" {
|
||
|
|
fl.Handler.SetPrefix("DEBUG: ")
|
||
|
|
}*/
|
||
|
|
|
||
|
|
fl.Handler.SetPrefix("INFO: ")
|
||
|
|
|
||
|
|
//fl.Handler.Println("Log file initialised")
|
||
|
|
|
||
|
|
return fl
|
||
|
|
}
|
||
|
|
|
||
|
|
func check(e error) {
|
||
|
|
if e != nil {
|
||
|
|
panic(e)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|