https://github.com/xmidt-org/ears
Event Async Receiver Service (EARS)
https://github.com/xmidt-org/ears
Last synced: about 2 months ago
JSON representation
Event Async Receiver Service (EARS)
- Host: GitHub
- URL: https://github.com/xmidt-org/ears
- Owner: xmidt-org
- License: apache-2.0
- Created: 2020-08-20T07:24:05.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-10-03T21:28:20.000Z (8 months ago)
- Last Synced: 2025-03-23T12:32:53.623Z (2 months ago)
- Language: Go
- Homepage:
- Size: 36.4 MB
- Stars: 4
- Watchers: 16
- Forks: 8
- Open Issues: 52
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Event Async Routing Service (EARS)
[](https://github.com/xmidt-org/ears/actions/workflows/ci.yml)
[](http://codecov.io/github/xmidt-org/ears?branch=main)
[](https://goreportcard.com/report/github.com/xmidt-org/ears)
[](https://sonarcloud.io/dashboard?id=xmidt-org_ears)
[](https://github.com/xmidt-org/ears/blob/main/LICENSE)
[](CHANGELOG.md)
[](https://pkg.go.dev/github.com/xmidt-org/ears)## Summary
A simple scalable routing service to usher events from an input plugin (for example, Kafka) to an output plugin (for example, AWS SQS).
As an event passes through EARS, it may be filtered or transformed depending on the configuration details of a route and the
event payload. Routes can be dynamically added and removed using a simple REST API and modifications to the routing table are
quickly synchronized across an EARS cluster.EARS is designed to eventually replace EEL, offering new features such as quotas and rate limiting as well as highly
dynamic routes while still supporting filtering and transformation capabilities similar to EEL.EARS comes with a set of standard plugins to support some of the most common message protocols including Webhook, Kafka, SQS,
Kinesis etc. but also makes the development of third party plugins easy.Our Kanban Board can be found [here](https://github.com/orgs/xmidt-org/projects/3).
## User Guide
* [Routes](docs/userguide/routes.md)
* [EARS API](docs/userguide/api.md)
* [EARS vs. EEL](docs/userguide/eel.md)
* [Simple Examples](docs/userguide/examples.md)
* [Config File ears.yaml](docs/userguide/config.md)
* [Debug Strategies](docs/userguide/debug.md)
* [Filter Plugin Reference](docs/userguide/filters.md)
* [Receiver Plugins Reference](docs/userguide/receivers.md)
* [Sender Plugins Reference](docs/userguide/senders.md)
* [Plugin Developer Guide](docs/userguide/plugindev.md)## References
* [swagger.yaml](internal/pkg/app/swagger.yaml)
* [ears.yaml](docs/userguide/config.md)## Contributing
Refer to [CONTRIBUTING.md](CONTRIBUTING.md).