An open API service indexing awesome lists of open source software.

https://github.com/geniusrabbit/eventstream

🚀 Eventstream pipeline to preprocess and resend from some source to some storage
https://github.com/geniusrabbit/eventstream

clickhouse eventstream go golang kafka nats postgresql prometheus redis redis-pubsub vertica

Last synced: 5 months ago
JSON representation

🚀 Eventstream pipeline to preprocess and resend from some source to some storage

Awesome Lists containing this project

README

          

# Eventstream message pipeline service

![License](https://img.shields.io/github/license/geniusrabbit/eventstream)
[![Docker Pulls](https://img.shields.io/docker/pulls/geniusrabbit/eventstream.svg?maxAge=604800)](https://hub.docker.com/r/geniusrabbit/eventstream)
[![Go Report Card](https://goreportcard.com/badge/github.com/geniusrabbit/eventstream)](https://goreportcard.com/report/github.com/geniusrabbit/eventstream)
[![Coverage Status](https://coveralls.io/repos/github/geniusrabbit/eventstream/badge.svg?branch=master)](https://coveralls.io/github/geniusrabbit/eventstream?branch=master)
[![Testing Status](https://github.com/geniusrabbit/eventstream/workflows/Tests/badge.svg)](https://github.com/geniusrabbit/eventstream/actions?workflow=Tests)
[![Publish Docker Status](https://github.com/geniusrabbit/eventstream/workflows/Publish/badge.svg)](https://github.com/geniusrabbit/eventstream/actions?workflow=Publish)

Eventstream pipeline for storing and re-sending events inside the system.

```sh
go get -v -u github.com/geniusrabbit/eventstream/cmd/eventstream
```

## Run eventstream service in docker

```sh
docker run -d -it --rm -v ./custom.config.hcl:/config.hcl \
geniusrabbit/eventstream
```

## Source list

- **kafka**
- **NATS** & **NATS stream**
- **Redis** stream

## Storage list

- **Clickhouse**
- **Vertica**
- **kafka**
- **NATS**
- **Redis** stream

## Config example

Supports two file formats YAML & HCL

```js
stores {
clickhouse_1 {
connect = "{{@env:CLICKHOUSE_STORE_CONNECT}}"
buffer = 1000
init_query = [<)
- [X] Ack message only if success
- [X] Buffering all data until be stored
- [X] Add support HCL config