diff --git a/go.mod b/go.mod index eed02b301..b3164431e 100644 --- a/go.mod +++ b/go.mod @@ -92,7 +92,7 @@ require github.com/hashicorp/go-dbw v0.0.0-20220412153211-c470aec9369f // this i require ( github.com/DATA-DOG/go-sqlmock v1.5.0 github.com/hashicorp/go-kms-wrapping/extras/kms/v2 v2.0.0-20220515130442-cac0b5ac133b - github.com/hashicorp/nodeenrollment v0.0.0-20220607152131-4f253e6da747 + github.com/hashicorp/nodeenrollment v0.0.0-20220609044242-598c08a89c45 ) require ( diff --git a/go.sum b/go.sum index 31a89704a..61ee52032 100644 --- a/go.sum +++ b/go.sum @@ -740,8 +740,8 @@ github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+l github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= -github.com/hashicorp/nodeenrollment v0.0.0-20220607152131-4f253e6da747 h1:/S1ePrvxgLI3jgL6XLVVQAOm3Ua0wS4PvRhmiTgG6hQ= -github.com/hashicorp/nodeenrollment v0.0.0-20220607152131-4f253e6da747/go.mod h1:8l3RSuZJAibZKnqX6tvLaeoFzPhDf4oCRVsyFjU5Soc= +github.com/hashicorp/nodeenrollment v0.0.0-20220609044242-598c08a89c45 h1:vnRJfKOMBoan6+PFw5P5CItnl3Z6lJJI1JaBM1tlLCo= +github.com/hashicorp/nodeenrollment v0.0.0-20220609044242-598c08a89c45/go.mod h1:8l3RSuZJAibZKnqX6tvLaeoFzPhDf4oCRVsyFjU5Soc= github.com/hashicorp/vault/api v1.3.1 h1:pkDkcgTh47PRjY1NEFeofqR4W/HkNUi9qIakESO2aRM= github.com/hashicorp/vault/api v1.3.1/go.mod h1:QeJoWxMFt+MsuWcYhmwRLwKEXrjwAFFywzhptMsTIUw= github.com/hashicorp/vault/sdk v0.1.13/go.mod h1:B+hVj7TpuQY1Y/GPbCpffmgd+tSEwvhkWnjtSYCaS2M= diff --git a/internal/daemon/worker/controller_connection.go b/internal/daemon/worker/controller_connection.go index 1851536dd..e75ac8a62 100644 --- a/internal/daemon/worker/controller_connection.go +++ b/internal/daemon/worker/controller_connection.go @@ -71,6 +71,7 @@ func (w *Worker) StartControllerConnections() error { } func (w *Worker) controllerDialerFunc() func(context.Context, string) (net.Conn, error) { + const op = "worker.(Worker).controllerDialerFunc" return func(ctx context.Context, addr string) (net.Conn, error) { var conn net.Conn var err error @@ -89,9 +90,20 @@ func (w *Worker) controllerDialerFunc() func(context.Context, string) (net.Conn, } } } + switch err { + case nil: + case nodeenrollment.ErrNotAuthorized: + // We don't event in this case, because the function retries often + // and will spam the logs. The status function will event indicating + // that it can't send status because it's not authorized, so that + // will be a fine hint to the user as to the issue. + default: + event.WriteError(ctx, op, err) + } if !w.everAuthenticated.Load() && err == nil && conn != nil { w.everAuthenticated.Store(true) + event.WriteSysEvent(ctx, op, "worker has successfully authenticated") } return conn, err diff --git a/internal/daemon/worker/status.go b/internal/daemon/worker/status.go index 728e0fe63..8890ef111 100644 --- a/internal/daemon/worker/status.go +++ b/internal/daemon/worker/status.go @@ -95,6 +95,7 @@ func (w *Worker) sendWorkerStatus(cancelCtx context.Context) { // any session information anyways and this will produce a ton of noise in // observability, so suppress it if !w.everAuthenticated.Load() { + event.WriteSysEvent(cancelCtx, op, "worker is not authenticated to an upstream, not sending status") return }