add configurable log file path
This commit is contained in:
@@ -24,6 +24,8 @@ var command = &cobra.Command{
|
|||||||
viper.SetEnvPrefix("XIP")
|
viper.SetEnvPrefix("XIP")
|
||||||
viper.AutomaticEnv()
|
viper.AutomaticEnv()
|
||||||
|
|
||||||
|
utils.InitLogger(viper.GetString("log-file"))
|
||||||
|
|
||||||
email := viper.GetString("Email")
|
email := viper.GetString("Email")
|
||||||
_, err := mail.ParseAddress(email)
|
_, err := mail.ParseAddress(email)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -84,6 +86,9 @@ var command = &cobra.Command{
|
|||||||
}
|
}
|
||||||
|
|
||||||
func Execute() {
|
func Execute() {
|
||||||
|
command.Flags().String("log-file", utils.DefaultLogFile, "Path to log file")
|
||||||
|
viper.BindPFlag("log-file", command.Flags().Lookup("log-file"))
|
||||||
|
|
||||||
command.Flags().Uint("dns-port", 53, "Port for the DNS server")
|
command.Flags().Uint("dns-port", 53, "Port for the DNS server")
|
||||||
viper.BindPFlag("dns-port", command.Flags().Lookup("dns-port"))
|
viper.BindPFlag("dns-port", command.Flags().Lookup("dns-port"))
|
||||||
|
|
||||||
|
|||||||
@@ -8,14 +8,25 @@ import (
|
|||||||
"gopkg.in/natefinch/lumberjack.v2"
|
"gopkg.in/natefinch/lumberjack.v2"
|
||||||
)
|
)
|
||||||
|
|
||||||
var consoleWriter = zerolog.ConsoleWriter{Out: os.Stdout, TimeFormat: time.RFC3339}
|
const DefaultLogFile = "/var/log/local-ip.sh.log"
|
||||||
var fileWriter = &lumberjack.Logger{
|
|
||||||
Filename: "/var/log/local-ip.sh.log",
|
|
||||||
MaxBackups: 3,
|
|
||||||
MaxSize: 1, // megabytes
|
|
||||||
MaxAge: 1, // days
|
|
||||||
Compress: true, // disabled by default
|
|
||||||
}
|
|
||||||
var multi = zerolog.MultiLevelWriter(consoleWriter, fileWriter)
|
|
||||||
|
|
||||||
var Logger = zerolog.New(multi).With().Timestamp().Logger()
|
var consoleWriter = zerolog.ConsoleWriter{Out: os.Stdout, TimeFormat: time.RFC3339}
|
||||||
|
|
||||||
|
var Logger = zerolog.New(consoleWriter).With().Timestamp().Logger()
|
||||||
|
|
||||||
|
func InitLogger(logFile string) {
|
||||||
|
if logFile == "" {
|
||||||
|
logFile = DefaultLogFile
|
||||||
|
}
|
||||||
|
|
||||||
|
fileWriter := &lumberjack.Logger{
|
||||||
|
Filename: logFile,
|
||||||
|
MaxBackups: 3,
|
||||||
|
MaxSize: 1,
|
||||||
|
MaxAge: 1,
|
||||||
|
Compress: true,
|
||||||
|
}
|
||||||
|
|
||||||
|
multi := zerolog.MultiLevelWriter(consoleWriter, fileWriter)
|
||||||
|
Logger = zerolog.New(multi).With().Timestamp().Logger()
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user