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  }