From 855923a5beaac3079cc1882001b794e2009ed09b Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Fri, 15 Apr 2022 14:53:59 +0000 Subject: [PATCH] fix: Test flake for DataDog agent logs Sometimes the DataDog agent would fail to connect and angrily log using the standard lib logger. This would fail tests. See: https://github.com/coder/coder/runs/6038192436?check_suite_focus=true --- cli/start.go | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/cli/start.go b/cli/start.go index 3d328cab1300a..3c9e0c9b98c29 100644 --- a/cli/start.go +++ b/cli/start.go @@ -64,8 +64,11 @@ func start() *cobra.Command { root := &cobra.Command{ Use: "start", RunE: func(cmd *cobra.Command, args []string) error { + logger := slog.Make(sloghuman.Sink(os.Stderr)) if traceDatadog { - tracer.Start() + tracer.Start(tracer.WithLogStartup(false), tracer.WithLogger(&datadogLogger{ + logger: logger.Named("datadog"), + })) defer tracer.Stop() } @@ -153,7 +156,6 @@ func start() *cobra.Command { return xerrors.Errorf("parse ssh keygen algorithm %s: %w", sshKeygenAlgorithmRaw, err) } - logger := slog.Make(sloghuman.Sink(os.Stderr)) options := &coderd.Options{ AccessURL: accessURLParsed, Logger: logger.Named("coderd"), @@ -534,3 +536,11 @@ func configureTLS(listener net.Listener, tlsMinVersion, tlsClientAuth, tlsCertFi return tls.NewListener(listener, tlsConfig), nil } + +type datadogLogger struct { + logger slog.Logger +} + +func (d *datadogLogger) Log(msg string) { + d.logger.Debug(context.Background(), msg) +}