Browse Source

Log timestamp once per tool invocation

master
Riyyi 9 hours ago
parent
commit
fc18e27c25
  1. 14
      pkg/state/state.go

14
pkg/state/state.go

@ -8,8 +8,12 @@ import (
"time" "time"
) )
// -----------------------------------------
var logFile *os.File var logFile *os.File
// -----------------------------------------
func OpenLog() error { func OpenLog() error {
logPath := filepath.Join("/var/log", "declpac.log") logPath := filepath.Join("/var/log", "declpac.log")
f, err := os.OpenFile(logPath, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644) f, err := os.OpenFile(logPath, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
@ -17,6 +21,7 @@ func OpenLog() error {
return err return err
} }
logFile = f logFile = f
writeTimestamp()
return nil return nil
} }
@ -25,7 +30,7 @@ func GetLogWriter() io.Writer {
} }
func Write(msg []byte) { func Write(msg []byte) {
PrependWithTimestamp(logFile, msg) logFile.Write(msg)
} }
func Close() error { func Close() error {
@ -35,9 +40,10 @@ func Close() error {
return logFile.Close() return logFile.Close()
} }
func PrependWithTimestamp(w io.Writer, msg []byte) { // -----------------------------------------
func writeTimestamp() {
ts := time.Now().Format("2006-01-02 15:04:05") ts := time.Now().Format("2006-01-02 15:04:05")
header := fmt.Sprintf("\n--- %s ---\n", ts) header := fmt.Sprintf("\n--- %s ---\n", ts)
w.Write([]byte(header)) logFile.Write([]byte(header))
w.Write(msg)
} }

Loading…
Cancel
Save