From 698fb76b98c46c677abe13fdc93afc6c4f38c39e Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Thu, 14 Oct 2021 20:55:35 +0300 Subject: refactor --- cmd/dtailhealth/main.go | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 cmd/dtailhealth/main.go (limited to 'cmd/dtailhealth') diff --git a/cmd/dtailhealth/main.go b/cmd/dtailhealth/main.go new file mode 100644 index 0000000..7e54b1c --- /dev/null +++ b/cmd/dtailhealth/main.go @@ -0,0 +1,49 @@ +package main + +import ( + "context" + "flag" + "fmt" + "os" + "sync" + + "net/http" + _ "net/http" + _ "net/http/pprof" + + "github.com/mimecast/dtail/internal/clients" + "github.com/mimecast/dtail/internal/config" + "github.com/mimecast/dtail/internal/io/dlog" + "github.com/mimecast/dtail/internal/io/signal" + "github.com/mimecast/dtail/internal/source" +) + +// The evil begins here. +func main() { + var args config.Args + var pprof int + + flag.IntVar(&pprof, "pprof", -1, "Start PProf server this port") + flag.StringVar(&args.Logger, "logger", config.DefaultHealthCheckLogger, "Logger name") + flag.StringVar(&args.LogLevel, "logLevel", "none", "Log level") + flag.StringVar(&args.ServersStr, "server", "", "Remote server to connect") + flag.Parse() + + config.Setup(source.HealthCheck, &args, flag.Args()) + + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + var wg sync.WaitGroup + wg.Add(1) + dlog.Start(ctx, &wg, source.HealthCheck) + + if pprof > -1 { + // For debugging purposes only + pprofArgs := fmt.Sprintf("0.0.0.0:%d", pprof) + go http.ListenAndServe(pprofArgs, nil) + dlog.Client.Info("Started PProf", pprofArgs) + } + + healthClient, _ := clients.NewHealthClient(args) + os.Exit(healthClient.Start(ctx, signal.NoCh(ctx))) +} -- cgit v1.2.3 From c0332e8fa13f4939de17c856b2e71fd093847253 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Fri, 15 Oct 2021 09:04:40 +0300 Subject: add dcat color output test --- cmd/dtailhealth/main.go | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'cmd/dtailhealth') diff --git a/cmd/dtailhealth/main.go b/cmd/dtailhealth/main.go index 7e54b1c..ec97d3a 100644 --- a/cmd/dtailhealth/main.go +++ b/cmd/dtailhealth/main.go @@ -16,19 +16,26 @@ import ( "github.com/mimecast/dtail/internal/io/dlog" "github.com/mimecast/dtail/internal/io/signal" "github.com/mimecast/dtail/internal/source" + "github.com/mimecast/dtail/internal/version" ) // The evil begins here. func main() { var args config.Args + var displayVersion bool var pprof int + flag.BoolVar(&displayVersion, "version", false, "Display version") flag.IntVar(&pprof, "pprof", -1, "Start PProf server this port") flag.StringVar(&args.Logger, "logger", config.DefaultHealthCheckLogger, "Logger name") flag.StringVar(&args.LogLevel, "logLevel", "none", "Log level") flag.StringVar(&args.ServersStr, "server", "", "Remote server to connect") flag.Parse() + if displayVersion { + version.PrintAndExit() + } + config.Setup(source.HealthCheck, &args, flag.Args()) ctx, cancel := context.WithCancel(context.Background()) -- cgit v1.2.3 From b679462fa687b375ccefd3c11fec3fd96b9b4d60 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Wed, 20 Oct 2021 06:41:08 +0300 Subject: make pprof bind address configurable --- cmd/dtailhealth/main.go | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'cmd/dtailhealth') diff --git a/cmd/dtailhealth/main.go b/cmd/dtailhealth/main.go index ec97d3a..326c43a 100644 --- a/cmd/dtailhealth/main.go +++ b/cmd/dtailhealth/main.go @@ -3,7 +3,6 @@ package main import ( "context" "flag" - "fmt" "os" "sync" @@ -23,13 +22,13 @@ import ( func main() { var args config.Args var displayVersion bool - var pprof int + var pprof string flag.BoolVar(&displayVersion, "version", false, "Display version") - flag.IntVar(&pprof, "pprof", -1, "Start PProf server this port") flag.StringVar(&args.Logger, "logger", config.DefaultHealthCheckLogger, "Logger name") flag.StringVar(&args.LogLevel, "logLevel", "none", "Log level") flag.StringVar(&args.ServersStr, "server", "", "Remote server to connect") + flag.StringVar(&pprof, "pprof", "", "Start PProf server this address") flag.Parse() if displayVersion { @@ -44,11 +43,9 @@ func main() { wg.Add(1) dlog.Start(ctx, &wg, source.HealthCheck) - if pprof > -1 { - // For debugging purposes only - pprofArgs := fmt.Sprintf("0.0.0.0:%d", pprof) - go http.ListenAndServe(pprofArgs, nil) - dlog.Client.Info("Started PProf", pprofArgs) + if pprof != "" { + go http.ListenAndServe(pprof, nil) + dlog.Client.Info("Started PProf", pprof) } healthClient, _ := clients.NewHealthClient(args) -- cgit v1.2.3