diff --git a/pkg/plugins/errors.go b/pkg/plugins/errors.go index a3097eb97d8..c26d4b609a5 100644 --- a/pkg/plugins/errors.go +++ b/pkg/plugins/errors.go @@ -18,6 +18,12 @@ var ( // ErrMethodNotImplemented error returned when a plugin method is not implemented. ErrMethodNotImplemented = errMethodNotImplementedBase.Errorf("method not implemented") + // ErrPluginHealthCheck error returned when a plugin fails its health check. + // Exposed as a base error to wrap it with plugin error. + ErrPluginHealthCheck = errutil.Internal("plugin.healthCheck", + errutil.WithPublicMessage("Plugin health check failed"), + errutil.WithDownstream()) + // ErrPluginDownstreamError error returned when a plugin request fails. // Exposed as a base error to wrap it with plugin downstream errors. ErrPluginDownstreamErrorBase = errutil.Internal("plugin.downstreamError", diff --git a/pkg/plugins/manager/client/client.go b/pkg/plugins/manager/client/client.go index fd6817ce764..89afd71fdb0 100644 --- a/pkg/plugins/manager/client/client.go +++ b/pkg/plugins/manager/client/client.go @@ -188,7 +188,7 @@ func (s *Service) CheckHealth(ctx context.Context, req *backend.CheckHealthReque return nil, err } - return nil, plugins.ErrPluginDownstreamErrorBase.Errorf("client: failed to check health: %w", err) + return nil, plugins.ErrPluginHealthCheck.Errorf("client: failed to check health: %w", err) } return resp, nil diff --git a/pkg/plugins/manager/client/client_test.go b/pkg/plugins/manager/client/client_test.go index 56fb46e1fdd..3d590bdb66e 100644 --- a/pkg/plugins/manager/client/client_test.go +++ b/pkg/plugins/manager/client/client_test.go @@ -97,7 +97,7 @@ func TestCheckHealth(t *testing.T) { }, { err: errors.New("surprise surprise"), - expectedError: plugins.ErrPluginDownstreamErrorBase, + expectedError: plugins.ErrPluginHealthCheck, }, }