| Post Reply | RetroFed Forums Forum Index » Reddthat Announcements |
| Author | Message | ||
|---|---|---|---|
|
Tiff reddthat.com ![]() ticoombs@reddthat.com Joined: 2023-06-06 |
The things that I do while I'm meant to be sleeping is apparently break Reddthat! Sorry folks. Here's a postmortem on the issue. What happenedI wanted a way in which I could view the metrics of our lemmy instance. This is a feature you need to turn on called Prometheus Metrics. This isn't a new thing for me, and I tackle these issues at $job daily. After reading the documentation here on prometheus, it looks like it is a compile time-flag. Meaning the pre-build packages that are generated do not contain metric endpoints. No worries I thought, I was already building the lemmy application and container successfully as part of getting our video support. So I built a new container with the correct build flags, turned on my dev server again, deployed, and tested extensively.
We now have interesting metrics for easy diagnosis. Tested posting comments, as well as uploading Images as well as testing out the new Video upload! So we've done our best and deploy to prod. ohno.webmAs you know from the other side... it didn't go to well. After 2 minutes of huge latencies my phone lights up with a billion notifications so I know something isn't working... not_again.mp4
Fool-heartedly I attempted it again, with: clearing out build cache, directly building on the server, more testing, more builds, more testing, and more testing. I opened up 50 terminals and basically DOS'd the (my) dev server with GET and POST requests as an attempt to trigger some form of high enough load that it would cause the testing to be validated and I'd figure out where I had gone wrong in the first place. Nothing would trigger the issue, so I continued along with my validation and "confirmed everything was working". Final Issue
So we are deploying to production again but we know it might not go so well so we are doing everything we can to minimise the issues. NOPE
At this point I accept the downtime and attempt to work on a solution while in fire. (I would have added the everything-is-fine meme but we've already got a few here)
So, i fsck'd with postgres for a bit, and attempted to get it to use our customPostgresql configuration. This was the cause of the complete ~5 minute downtime. I took down everything except postgres to perform a backup because at this point I wasn't too certain what was going to be the cause of the issue. To no avail. Even with our postgres sql tuning the lemmy container I build was not performing under load as well as the developers container. So I pretty much wasted 3 hours of my life, and reverted everything back. Results
At this point I'm unsure of a way forward to create the lemmy containers in a way that will perform the same as the developers ones, so instead of being one of the first instances to be able to upload video content, we might have to settle for video content when it comes. Final Finally
I'll be choosing stability from now on. Tiff Notes for other lemmy admins / me for testing later:
|
||
| 1 Original | |||
| Post Reply |
Back to top |