diff options
Diffstat (limited to 'reallog.go')
| -rw-r--r-- | reallog.go | 30 |
1 files changed, 26 insertions, 4 deletions
@@ -7,12 +7,17 @@ import ( "fmt" reallog "log" "net/http" + "os" ) func DaemonMode(b bool) { daemonMode = b } +func CaptureMode(f *os.File) { + captureMode = f +} + func HttpMode(w http.ResponseWriter) { httpMode = w } @@ -27,9 +32,18 @@ func DaemonShow() { func realPrintln(a ...any) { if daemonMode { - fmt.Println(a...) + if captureMode == nil { + fmt.Println(a...) + } else { + fmt.Fprintln(captureMode, a...) + } } else { - reallog.Println(a...) + if captureMode == nil { + fmt.Println(a...) + } else { + // TODO: add datestamp + fmt.Fprintln(captureMode, a...) + } } if httpMode != nil { s := fmt.Sprint(a...) @@ -39,9 +53,17 @@ func realPrintln(a ...any) { func realPrintf(s string, a ...any) { if daemonMode { - fmt.Printf(s, a...) + if captureMode == nil { + fmt.Printf(s, a...) + } else { + fmt.Fprintf(captureMode, s, a...) + } } else { - reallog.Printf(s, a...) + if captureMode == nil { + reallog.Printf(s, a...) + } else { + fmt.Fprintf(captureMode, s, a...) + } } if httpMode != nil { fmt.Fprintln(httpMode, fmt.Sprintf(s, a...)) |
