github.com/wtfutil/wtf@v0.43.0/logger/log.go (about) 1 package logger 2 3 import ( 4 "log" 5 "os" 6 "path/filepath" 7 ) 8 9 /* -------------------- Exported Functions -------------------- */ 10 11 func Log(msg string) { 12 if LogFileMissing() { 13 return 14 } 15 16 f, err := os.OpenFile(LogFilePath(), os.O_RDWR|os.O_CREATE|os.O_APPEND, 0600) 17 if err != nil { 18 log.Fatalf("error opening file: %v", err) 19 } 20 defer func() { _ = f.Close() }() 21 22 log.SetOutput(f) 23 log.Println(msg) 24 } 25 26 func LogFileMissing() bool { 27 return LogFilePath() == "" 28 } 29 30 func LogFilePath() string { 31 dir, err := os.UserHomeDir() 32 if err != nil { 33 return "" 34 } 35 36 return filepath.Join(dir, ".config", "wtf", "log.txt") 37 }