Gerrit events listener to send events to an external Apache Kafka broker.

Clone this repo:
  1. 189be66 Add deprecation notice by Luca Milanesio · 9 weeks ago master
  2. a4aceca Upgrade Kafka client to v3.7.1 by Alvaro Vilaplana Garcia · 1 year, 1 month ago stable-3.11 stable-3.12
  3. 4513a99 Upgrade Kafka client to v2.8.2 by Alvaro Vilaplana Garcia · 1 year, 1 month ago
  4. 2f81bc3 Increase default value for plugin.@PLUGIN@.numberOfSubscribers by Marcin Czech · 1 year, 9 months ago stable-3.10
  5. b8bd44b Merge of ExtendedBrokerApi into BrokerApi by Luca Milanesio · 1 year, 9 months ago

DEPRECATION NOTICE

GerritForge has decided to change the license to BSL therefore the Apache 2.0 version of this plugin is deprecated. The recommended version of the events-kafka plugin is on GitHub and the development continues on GerritHub.io.

Kafka: Gerrit event producer for Apache Kafka (DEPRECATED)

Build Status

Synopsis

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 later.

Environments

  • linux
  • java-1.8
  • Bazel

Build

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. The plugin depends on events-broker which is linked directly from source with the same ‘in-tree’ plugin structure.

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 git clone https://gerrit.googlesource.com/modules/events-broker gerrit/plugins/events-broker 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 bazel-genfiles/plugins/events-broker/events-broker.jar 

Minimum Configuration

Assuming a running Kafka broker on the same Gerrit host, add the following settings to gerrit.config:

 [plugin "events-kafka"] bootstrapServers = localhost:9092