This repository contains the code for the containerised application to send Syslog messages to CloudWatch. Once the messages are in CloudWatch, they will be picked up and shipped to the OST platform. Vector was selected as it is a popular open source solution for getting syslogs into CloudWatch.
It currently listens on UDP
on the default port 514
for any incoming messages.
This container is run in a set AWS ECS tasks.
To boot this application locally, run make run
Configuring Vector is done in the vector.toml file.
When running this locally, vector.development.toml will be used. New features should be created as a pull request in Github.
This application is deployed through AWS CodePipeline. There are 3 environments that this service runs on:
- Development
- Pre-Production
- Production
Any changes merged into the main
branch will be deployed to Development and Pre-Production.
Manual approval is required to deploy to Production.
Deploying on CI is a 2 step process:
- Build and push the Docker image to AWS ECR
- Create a new zero downtime ECS deployment
More details can be found in ./scripts/deploy