From 028ad3441cf4b26ab8ed47c3784ee59bcf1ffa25 Mon Sep 17 00:00:00 2001 From: Dan Ballard Date: Mon, 5 Jul 2021 17:44:21 -0700 Subject: [PATCH] add env var controls to enable file logging and log level DEBUG --- lib.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lib.go b/lib.go index 4b2bcb3..c53a0eb 100644 --- a/lib.go +++ b/lib.go @@ -68,7 +68,20 @@ func c_StartCwtch(dir_c *C.char, len C.int, tor_c *C.char, torLen C.int) int8 { // message: CwtchStarted when start up is complete and app is safe to use // CwtchStartError message when start up fails (includes event.Error data field) func StartCwtch(appDir string, torPath string) int { + if logfile := os.Getenv("LOG_FILE"); logfile != "" { + filelog, err := log.NewFile(log.LevelInfo, logfile) + filelog.SetUseColor(false) + if err == nil { + log.SetStd(filelog) + } else { + // not so likely to be seen since we're usually creating file log in situations we can't access console logs... + log.Errorf("could not create file log: %v\n", err) + } + } log.SetLevel(log.LevelInfo) + if logLevel := os.Getenv("LOG_LEVEL"); strings.ToLower(logLevel) == "debug" { + log.SetLevel(log.LevelDebug) + } log.Infof("StartCwtch(...)") // Quick hack check that we're being called with the correct params