diff --git a/Readme.md b/Readme.md index 8e607db..70cada2 100644 --- a/Readme.md +++ b/Readme.md @@ -1,7 +1,7 @@ # gopackagebase ```sh -go get git.wisellama.rocks/Wisellama/gopackagebase@v0.0.3 +go get git.wisellama.rocks/Wisellama/gopackagebase@v0.0.4 ``` This modules contains basic setup and initialization functions that diff --git a/gopackagebase.go b/gopackagebase.go index c05ec3b..d20c355 100644 --- a/gopackagebase.go +++ b/gopackagebase.go @@ -30,10 +30,11 @@ func Initialize(configFile string, defaultConfig gosimpleconf.ConfigMap) (*BaseC log.Fatalf("error during configure: %v\n", err) } + utcTime := gosimpleconf.Bool(configMap["log.utcTime"]) writeToFile := gosimpleconf.Bool(configMap["log.writeToFile"]) logFilename := configMap["log.file"] - logWriter, err := SetupLogging(writeToFile, logFilename) + logWriter, err := SetupLogging(writeToFile, utcTime, logFilename) if err != nil { return nil, err } diff --git a/logging.go b/logging.go index b44a24d..3ec6420 100644 --- a/logging.go +++ b/logging.go @@ -8,20 +8,25 @@ import ( ) type logWriter struct { + utcTime bool writeToFile bool logFile *os.File } func (w *logWriter) Write(bytes []byte) (int, error) { - t := time.Now().UTC().Format(time.RFC3339) - return fmt.Fprintf(w.logFile, "%v %v", t, string(bytes)) + t := time.Now() + if w.utcTime { + t = t.UTC() + } + format := t.Format(time.RFC3339) + return fmt.Fprintf(w.logFile, "%v %v", format, string(bytes)) } func (w *logWriter) Cleanup() { defer w.logFile.Close() } -func SetupLogging(writeToFile bool, logFilename string) (*logWriter, error) { +func SetupLogging(writeToFile bool, utcTime bool, logFilename string) (*logWriter, error) { var err error log.SetFlags(0) @@ -34,6 +39,7 @@ func SetupLogging(writeToFile bool, logFilename string) (*logWriter, error) { } writer := &logWriter{ + utcTime: utcTime, writeToFile: writeToFile, logFile: logFile, }