kafka-connect-healthcheck-extension

Kafka connect healthchecks REST endpoint extension

License

License

Categories

Categories

Net
GroupId

GroupId

net.loobpack.kafka-connect-healthchecks
ArtifactId

ArtifactId

kafka-connect-healthcheck-extension
Last Version

Last Version

1.0.0
Release Date

Release Date

Type

Type

jar
Description

Description

kafka-connect-healthcheck-extension
Kafka connect healthchecks REST endpoint extension
Project URL

Project URL

https://github.com/LoObp4ck/kafka-connect-healthchecks
Source Code Management

Source Code Management

https://github.com/LoObp4ck/kafka-connect-healthchecks

Download kafka-connect-healthcheck-extension

How to add to project

<!-- https://jarcasting.com/artifacts/net.loobpack.kafka-connect-healthchecks/kafka-connect-healthcheck-extension/ -->
<dependency>
    <groupId>net.loobpack.kafka-connect-healthchecks</groupId>
    <artifactId>kafka-connect-healthcheck-extension</artifactId>
    <version>1.0.0</version>
</dependency>
// https://jarcasting.com/artifacts/net.loobpack.kafka-connect-healthchecks/kafka-connect-healthcheck-extension/
implementation 'net.loobpack.kafka-connect-healthchecks:kafka-connect-healthcheck-extension:1.0.0'
// https://jarcasting.com/artifacts/net.loobpack.kafka-connect-healthchecks/kafka-connect-healthcheck-extension/
implementation ("net.loobpack.kafka-connect-healthchecks:kafka-connect-healthcheck-extension:1.0.0")
'net.loobpack.kafka-connect-healthchecks:kafka-connect-healthcheck-extension:jar:1.0.0'
<dependency org="net.loobpack.kafka-connect-healthchecks" name="kafka-connect-healthcheck-extension" rev="1.0.0">
  <artifact name="kafka-connect-healthcheck-extension" type="jar" />
</dependency>
@Grapes(
@Grab(group='net.loobpack.kafka-connect-healthchecks', module='kafka-connect-healthcheck-extension', version='1.0.0')
)
libraryDependencies += "net.loobpack.kafka-connect-healthchecks" % "kafka-connect-healthcheck-extension" % "1.0.0"
[net.loobpack.kafka-connect-healthchecks/kafka-connect-healthcheck-extension "1.0.0"]

Dependencies

compile (1)

Group / Artifact Type Version
org.apache.kafka : connect-api jar 5.5.1-ccs

provided (2)

Group / Artifact Type Version
org.projectlombok : lombok jar 1.18.12
com.fasterxml.jackson.core : jackson-annotations jar 2.11.0

test (14)

Group / Artifact Type Version
org.slf4j : slf4j-nop jar 1.7.30
org.junit.jupiter : junit-jupiter-engine jar 5.6.0
org.junit.jupiter : junit-jupiter-params jar 5.6.0
org.junit.vintage : junit-vintage-engine jar 5.6.0
org.assertj : assertj-core jar 3.15.0
org.mockito : mockito-junit-jupiter jar 3.2.4
org.glassfish.jersey.test-framework : jersey-test-framework-core jar 2.27
org.glassfish.jersey.test-framework.providers : jersey-test-framework-provider-grizzly2 jar 2.27
org.glassfish.jersey.inject : jersey-hk2 jar 2.27
org.glassfish.jersey.media : jersey-media-json-jackson jar 2.27
org.testcontainers : junit-jupiter jar 1.12.5
org.testcontainers : kafka jar 1.12.5
com.squareup.okhttp3 : okhttp jar 4.4.0
org.json : json jar 20190722

Project Modules

There are no modules declared in this project.

kafka-connect-healthchecks

This is Kafka Connect Extension that exposes a /healthcheck endpoint that can used to retrieve the health status of each connector running in the cluster.

For now, it will check that, for all connectors that are part of your Kafka Connect cluster, all tasks are in RUNNING state ( we'll make that more tunable soon).

How to install

Copy the JAR file into the plugin.path (or CONNECT_PLUGIN_PATH if you are using env vars) directory and the set the property rest.extension.classes (or CONNECT_REST_EXTENSION_CLASSES env var) with the full qulified name of the extension class, e.g. CONNECT_REST_EXTENSION_CLASSES=com.loobpack.data.kafka.connect.healthcheck.extension.HealthCheckConnectRestExtension.

Note that, as per the official documentation, you can configure more than one extension if you specify the classes with comma-separated values.

Finally you can also access the JAR from maven central repository

<dependency>
  <groupId>net.loobpack.kafka-connect-healthchecks</groupId>
  <artifactId>kafka-connect-healthcheck-extension</artifactId>
  <version>1.0.0</version>
</dependency>

Special thanks

He did not have the time to commit by himself, but most of the initial work here has been made by @ddcprg, thx =)

Thx Vonage/Nexmo (initially intented for internal uses) as well for letting us publish this piece of work

Versions

Version
1.0.0