terminus icon indicating copy to clipboard operation
terminus copied to clipboard

Kafka Microservice Consumer Healthcheck

Open edeesis opened this issue 1 year ago • 2 comments

Is there an existing issue that is already proposing this?

  • [X] I have searched the existing issues

Is your feature request related to a problem? Please describe it

The Microservice Health Indicator only checks whether a producer can connect to Kafka, but I’m also interested in the state of the consumer. If the consumer has crashed, then I want the health indicator to fail.

unfortunately, implementing this myself I ran into a few issues:

  1. accessing the ServerKafka instance, which contains the consumer, doesn’t seem possible in the context of a health indicator
  2. there’s no easy way to subscribe to instrumentation events, see https://github.com/nestjs/nest/issues/11616

Describe the solution you'd like

I’d like the Microservice Health Indicator to also check the status of the Server side, not just the client side.

Teachability, documentation, adoption, migration strategy

The usage should be the same as the existing MicroserviceHealthIndicator, though it shouldn’t require instantiating a new instance of ServerKafka, it should use the existing one.

What is the motivation / use case for changing the behavior?

I need to be able to know if the consumer has crashed and include that information in a liveness check.

edeesis avatar Jun 13 '24 02:06 edeesis