From a29052e6f8cc59656568debeeb909640bcadcbc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan-Otto=20Kr=C3=B6pke?= Date: Sat, 8 Jul 2023 12:47:29 +0200 Subject: [PATCH] Add log messages from RetryPolicy --- main.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/main.go b/main.go index 096dd1d..7f028e3 100644 --- a/main.go +++ b/main.go @@ -9,8 +9,12 @@ import ( "net/http" "os" "runtime" + "strings" "time" + azlog "github.com/Azure/azure-sdk-for-go/sdk/azcore/log" + "go.uber.org/zap" + "github.com/google/uuid" "github.com/jessevdk/go-flags" "github.com/patrickmn/go-cache" @@ -61,6 +65,7 @@ func main() { logger.Infof("init Azure connection") initAzureConnection() + initAzLogger() initMetricCollector() logger.Infof("starting http server on %s", opts.Server.Bind) @@ -204,3 +209,21 @@ func initMetricCollector() { ) prometheus.MustRegister(prometheusMetricRequests) } + +func initAzLogger() { + if cls := os.Getenv("AZURE_SDK_GO_LOGGING"); cls != "all" { + azlog.SetEvents(azlog.EventRetryPolicy) + azlog.SetListener(func(cls azlog.Event, msg string) { + if cls == azlog.EventRetryPolicy { + if strings.HasPrefix(msg, "response 2") || + strings.HasPrefix(msg, "=====> Try=") || + strings.HasPrefix(msg, "End Try") || + msg == "exit due to non-retriable status code" { + return + } + + logger.WithOptions(zap.AddCallerSkip(3)).Warnln(msg) + } + }) + } +}