mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.0 KiB
1.0 KiB
Site Reliability Engineer - Basic API Hosting Task
Part 1 – The Web Service
Write a web service in any language that takes in a JSON payload, does some basic validation against an expected message format and content, and then puts that payload into a queue of your choice or a file.
Example valid payload:
{
"ts": "1530228282",
"sender": "curler-user",
"message": {
"foo": "bar",
"hash": "bash"
},
"sent-from-ip": "1.2.3.4"
}
Validation rules: ● “ts” must be present and a valid Unix timestamp ● “sender” must be present and a string ● “message” must be present, a JSON object, and have at least one field set ● If present, “sent-from-ip” must be a valid IPv4 address ● All fields not listed in the example above are invalid, and should result in the message being rejected.
Part 2 – Terraform
Deploy this application to your favourite cloud provider using Terraform.
Part 3 – NewRelic
Implement NewRelic monitoring for this application using Terraform.