A gRPC server part of the Buffer Unified Data Architecture that collects different events. The events are sent to specific Kinesis streams to be consumed later. You can check what events are supported in the service definition inside BUDA Protobufs repository.
You can communicate with the Events Collector using gRPC. Create or use a library for your prefered language and call the available methods!
Before starting, create a .env file inside the server folder containing your AWS credentials:
AWS_ACCESS_KEY_ID=1234567890ASDFGHJKL
AWS_SECRET_ACCESS_KEY=QWERTYUIOPASDFGHJKLZXCVBNM
AWS_DEFAULT_REGION=us-east-1
The main logic of the Events Collector resided under the server.py. If you want to run the server locally in Docker you need to run make build && make run and then, in another terminal, run make build && make run inside the client folder.
You can deploy the collector server to Kubernetes using the YAML files located in the kubernetes folder. Before creating any new resources check that you have aws secrets in place!
The collector requires a Deployment and a Service. you can create both resources with kubectl:
kubectl create -f kubernetes/events-collector.deployment.yamlkubectl create -f kubernetes/events-collector.service.yaml
If everything worked you can now communicate with it creating a client and pointing it to event-collector:50051.
We use Semantic Versioning for the Docker images.
Contributions are always welcome! Please open an issue if you have questions or suggestions.
MIT License Copyright (c) 2017 Buffer