commit | b33f9ad66af1019709042b5c0e606ed33af0503f | [log] [tgz] |
---|---|---|
author | Luca Milanesio <luca.milanesio@gmail.com> | Mon Nov 08 20:59:46 2021 +0000 |
committer | Luca Milanesio <luca.milanesio@gmail.com> | Mon Nov 08 23:17:19 2021 +0000 |
tree | 3c81e2b3a0b763f561171c99041c4f02144a7d08 | |
parent | 0c783e92c14234064f76624cd0d6caee1d41aa02 [diff] |
REST ClientType: Make thread pool and timeouts configuration Do not wait forever for Kafka REST API to complete but allow to limit: - Number of concurrent REST-API requests waiting in parallel - Timeout for waiting for a REST-API to complete This allows to avoid piling up the concurrent REST-API requests pending to the Kafka REST Proxy at the same time. The timeout is also used to make sure that REST client threads are not wasted and they are timing out at the same speed of the REST API timeout: - ConnectionRequestTimeout - ConnectTimeout - SocketTimeout Change-Id: Ia5deaef6944273e26cd5144fe3e685a2dd87dca0
This plugins allows to define a distributed stream of events published by Gerrit.
Events can be anything, from the traditional stream events to the Gerrit metrics.
This plugin requires Gerrit 2.13 or laster.
linux
java-1.8
Bazel
Kafka plugin can be build as a regular ‘in-tree’ plugin. That means that is required to clone a Gerrit source tree first and then to have the Kafka plugin source directory into the /plugins path. Additionally, the plugins/external_plugin_deps.bzl file needs to be updated to match the Kafka plugin one.
git clone --recursive https://gerrit.googlesource.com/gerrit git clone https://gerrit.googlesource.com/plugins/events-kafka gerrit/plugins/events-kafka cd gerrit rm plugins/external_plugin_deps.bzl ln -s ./events-kafka/external_plugin_deps.bzl plugins/.
To build the events-kafka plugins, issue the command from the Gerrit source path:
bazel build plugins/events-kafka
The output is created in
bazel-genfiles/plugins/events-kafka/events-kafka.jar
Assuming a running Kafka broker on the same Gerrit host, add the following settings to gerrit.config:
[plugin "events-kafka"] bootstrapServers = localhost:9092