mirror output to stdout and http
This commit is contained in:
parent
ef61eb494b
commit
889ec714e1
|
@ -0,0 +1,16 @@
|
||||||
|
log
|
||||||
|
|
||||||
|
This is an attempt to modify the default golang 'log'.
|
||||||
|
Because the 'gui' toolkit could be either ncurses or something like gtk,
|
||||||
|
'log' is an attempt to be smart about changing STDOUT on the fly.
|
||||||
|
|
||||||
|
* add meaningful shortcuts like log.Info(), log.Warn(), log.Error() etc
|
||||||
|
* add flags to enable & disable output on a per-gomodule basis
|
||||||
|
* add http flag to switch stdout to http socket
|
||||||
|
* compatible with changing import 'log' to import 'go.wit.com/log'
|
||||||
|
* should also be compatible with changing import 'fmt' to import fmt 'go.wit.com/log'
|
||||||
|
|
||||||
|
Notes & Goals:
|
||||||
|
|
||||||
|
* be a complete droplet replacement for golang 'log'
|
||||||
|
* provide an example of how the stdlib 'log' could be changed
|
24
reallog.go
24
reallog.go
|
@ -26,25 +26,23 @@ func DaemonShow() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func realPrintln(a ...any) {
|
func realPrintln(a ...any) {
|
||||||
if httpMode == nil {
|
if daemonMode {
|
||||||
if daemonMode {
|
fmt.Println(a...)
|
||||||
fmt.Println(a...)
|
|
||||||
} else {
|
|
||||||
reallog.Println(a...)
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
fmt.Fprintln(httpMode, a...)
|
reallog.Println(a...)
|
||||||
|
}
|
||||||
|
if httpMode != nil {
|
||||||
|
fmt.Fprintln(httpMode, fmt.Sprint(a...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func realPrintf(s string, a ...any) {
|
func realPrintf(s string, a ...any) {
|
||||||
if httpMode == nil {
|
if daemonMode {
|
||||||
if daemonMode {
|
fmt.Printf(s, a...)
|
||||||
fmt.Printf(s, a...)
|
|
||||||
} else {
|
|
||||||
reallog.Printf(s, a...)
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
|
reallog.Printf(s, a...)
|
||||||
|
}
|
||||||
|
if httpMode != nil {
|
||||||
fmt.Fprintln(httpMode, fmt.Sprintf(s, a...))
|
fmt.Fprintln(httpMode, fmt.Sprintf(s, a...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue