
@PLUGIN@ Configuration
=========================

The @PLUGIN@ plugin must be installed on all the instances and the following fields
should be specified in `$site_path/etc/@PLUGIN@.config` file:

File '@PLUGIN@.config'
--------------------

## Sample configuration.

```
[kafka]
  bootstrapServers = kafka-1:9092,kafka-2:9092,kafka-3:9092

  indexEventTopic = gerrit_index
  streamEventTopic = gerrit_stream
  cacheEventTopic = gerrit_cache_eviction
  projectListEventTopic = gerrit_project_list

[kafka "publisher"]
  enabled = true

  indexEventEnabled = true
  cacheEventEnabled = true
  projectListEventEnabled = true
  streamEventEnabled = true

  KafkaProp-compressionType = none
  KafkaProp-deliveryTimeoutMs = 60000

[kafka "subscriber"]
  enabled = true
  pollingIntervalMs = 1000

  KafkaProp-enableAutoCommit = true
  KafkaProp-autoCommitIntervalMs = 1000
  KafkaProp-autoCommitIntervalMs = 5000

  indexEventEnabled = true
  cacheEventEnabled = true
  projectListEventEnabled = true
  streamEventEnabled = true
```

## Configuration parameters

```cache.synchronize```
:   Whether to synchronize cache evictions.
    Defaults to true.

```cache.threadPoolSize```
:   Maximum number of threads used to send cache evictions to the target instance.
    Defaults to 4.

```cache.pattern```
:   Pattern to match names of custom caches for which evictions should be
    forwarded (in addition to the core caches that are always forwarded). May be
    specified more than once to add multiple patterns.
    Defaults to an empty list, meaning only evictions of the core caches are
    forwarded.

```event.synchronize```
:   Whether to synchronize stream events.
    Defaults to true.

```index.numStripedLocks```
:   Number of striped locks to use for during secondary indexes reindex.
    Defaults to 10

```index.synchronize```
:   Whether to synchronize secondary indexes.
    Defaults to true.

```index.threadPoolSize```
:   Maximum number of threads used to send index events to the target instance.
    Defaults to 4.

```index.maxTries```
:   Maximum number of times the plugin should attempt to reindex changes.
    Setting this value to 0 will disable retries. After this number of failed tries,
    an error is logged and the local index should be considered stale and needs
    to be investigated and manually reindexed.
    Defaults to 2.

```index.retryInterval```
:   The interval of time in milliseconds between the subsequent auto-retries.
    Defaults to 30000 (30 seconds).

```kafka.bootstrapServers```
:	List of Kafka broker hosts:port to use for publishing events to the message broker

```kafka.indexEventTopic```
:   Name of the Kafka topic to use for publishing indexing events
    Defaults to GERRIT.EVENT.INDEX

```kafka.streamEventTopic```
:   Name of the Kafka topic to use for publishing stream events
    Defaults to GERRIT.EVENT.STREAM

```kafka.cacheEventTopic```
:   Name of the Kafka topic to use for publishing cache eviction events
    Defaults to GERRIT.EVENT.CACHE

```kafka.projectListEventTopic```
:   Name of the Kafka topic to use for publishing cache eviction events
    Defaults to GERRIT.EVENT.PROJECT.LIST

```kafka.publisher.enabled```
:   Enable publishing events to Kafka
    Defaults: false

```kafka.publisher.indexEventEnabled```
:   Enable publication of index events, ignored when `kafka.publisher.enabled` is false
    Defaults: true

```kafka.publisher.cacheEventEnabled```
:   Enable publication of cache events, ignored when `kafka.publisher.enabled` is false
    Defaults: true

```kafka.publisher.projectListEventEnabled```
:   Enable publication of project list events, ignored when `kafka.publisher.enabled` is false
    Defaults: true

```kafka.publisher.streamEventEnabled```    
:   Enable publication of stream events, ignored when `kafka.publisher.enabled` is false
    Defaults: true

```kafka.subscriber.enabled```
:   Enable consuming of events from Kafka
    Defaults: false

```kafka.subscriber.indexEventEnabled```
:   Enable consumption of index events, ignored when `kafka.subscriber.enabled` is false
    Defaults: true

```kafka.subscriber.cacheEventEnabled```
:   Enable consumption of cache events, ignored when `kafka.subscriber.enabled` is false
    Defaults: true

```kafka.subscriber.projectListEventEnabled```
:   Enable consumption of project list events, ignored when `kafka.subscriber.enabled` is false
    Defaults: true

```kafka.subscriber.streamEventEnabled```    
:   Enable consumption of stream events, ignored when `kafka.subscriber.enabled` is false
    Defaults: true

```kafka.subscriber.pollingIntervalMs```
:   Polling interval for checking incoming events
    Defaults: 1000

#### Custom kafka properties:

In addition to the above settings, custom Kafka properties can be explicitly set for `publisher` and `subscriber`.
In order to be acknowledged, these properties need to be prefixed with the `KafkaProp-` prefix and then camelCased,
as follows: `KafkaProp-yourPropertyValue`

For example, if you want to set the `auto.commit.interval.ms` property for your consumers, you will need to configure
this property as `KafkaProp-autoCommitIntervalMs`.

**NOTE**: custom kafka properties will be ignored when the relevant subsection is disabled (i.e. `kafka.subscriber.enabled`
and/or `kafka.publisher.enabled` are set to `false`).

The complete list of available settings can be found directly in the kafka website:

* **Publisher**: https://kafka.apache.org/documentation/#producerconfigs
* **Subscriber**: https://kafka.apache.org/documentation/#consumerconfigs