leader election function is disabled by default, and could be enabled by adding the
following section in `config.yaml`:
```yaml
leaderElection:
enabled: true
leaderElectionID: kubernetes-event-exporter // this field can be omited, default value is kubernetes-event-exporter
```
Date formatted index names are a common pattern in Elastic setups. This
commit as a config field to specify a string pattern for index names.
The pattern is searched for sequenences inside {curly braces} and passes
any text found plus the current time through the Go time formatting function.
Before the change, the engine didn't call the `Close()` method of the
sinks. This is needed in some cases, i.e when a sink implementation is
buffered.
This change adds a `Close()` method to the registry that
will signal sinks to exit and wait for all sinks to exit before
returning. This is then used in the engine stop logic.
In the channel-based registry, the closing of all sinks is done in
parallel (using a `sync.WaitGroup`). In the sync registry, sinks are
closed sequentially.
Fixes issue #10
This new sink adds basic support for Kafka, using `sarama.SyncProducer`.
It allows minimal configuration to make it useful:
- Topic
- Broker List
- TLS settings
The layout transformations are supported in the same way as for kinesis.
Implements issue #6.