32 lines
676 B
Go
32 lines
676 B
Go
package main
|
|
|
|
import (
|
|
"os"
|
|
"syscall"
|
|
|
|
"github.com/derailed/k9s/cmd"
|
|
"github.com/derailed/k9s/internal/config"
|
|
"github.com/rs/zerolog"
|
|
"github.com/rs/zerolog/log"
|
|
_ "k8s.io/client-go/plugin/pkg/client/auth"
|
|
"k8s.io/klog"
|
|
)
|
|
|
|
func init() {
|
|
config.EnsurePath(config.K9sLogs, config.DefaultDirMod)
|
|
|
|
mod := os.O_CREATE | os.O_APPEND | os.O_WRONLY
|
|
if file, err := os.OpenFile(config.K9sLogs, mod, config.DefaultFileMod); err == nil {
|
|
log.Logger = log.Output(zerolog.ConsoleWriter{Out: file})
|
|
// Klogs (of course) want to print stuff to the screen ;(
|
|
klog.SetOutput(file)
|
|
syscall.Dup2(int(file.Fd()), 2)
|
|
} else {
|
|
panic(err)
|
|
}
|
|
}
|
|
|
|
func main() {
|
|
cmd.Execute()
|
|
}
|