I spent around the last 5 months working on the back end for my saas I have been working on. Appdoctor.io . I finally feel it is done(tests and all) and am now starting on the front end. The back end is built in elixir / hosted across multiple regions on digital ocean.
The application does a couple things.
It can proxy requests. Ex. Google-com-ACCOUNTID.appdoctor.io will make a request like your calling google.com directly. This request is searchable and you can assign rules to trigger on…so something like if a request to Google takes longer then 1 second email team 1.
Used for public status pages. Can be configured to send health checks and set up public status pages at status.appdoctor.io/uniquename much like statuspage.io including response times / failed requests ect
3.Can be used to set up complex automated tests against production apis from multiple regions. Ex. Should request Google from Europe region and pass if response is faster then 300ms Sleep x amount of time Some other request/assertion from another region. I even splurged a little and took some time so users can right lua assertions if the basic assertion syntax is not enough.
I am really excited to finally be “done” with the backend and able to get one step closer to launch. I used all the in’s and outs of elixir extensively so feel free to as any questions.
Random tidbits
using distributed elixir so when a server crashes another server will pick up it’s work(a running test for example)
Test run in a spawned execution genserver and stop themself once the test is done. I love that elixir can act as my job runner.
Working with a designer to get some pdf’s of the frontend for my project appdoctor
https://lobste.rs/s/gibtle/what_are_you_working_on_this_week#c_kbtnbm
and then finally get to kick of the react based front end.