Hacker News new | ask | show | jobs
by brianwawok 2613 days ago
If you can write a perfect automated status page - can't you basically write perfect integration tests and make sure no bad code gets deployed?

Bit of a chicken and an egg problem :)

2 comments

Do you write every single test for your codebase? Do you have control over every line of code that gets deployed? The purpose of monitoring is to detect issues, because preventing them entirely is next to impossible.

By your logic if you can write perfect integration tests, can't you write perfect application code that doesn't need to be tested?

I think you've missed the point.

OP is arguing that a perfect codebase is not possible, therefore it's a bit unfair to complain that the status pages do not work perfectly. Hence the chicken and egg problem of "if I could write a perfect status page, I would have skills such that the status page would not be necessary".

There are two ways to have a status page.

1) A guy with a button. It's right, but it requires the guy to notice or get told - and remember to push the button.

2) Automation. But your automation has to somehow catch bugs that you can't even dream of. And not be triggered randomly. And somehow be able to be automated but not fixed at the source (as if you know how something will fail - why not just fix that over adding more status checks?)

That may be true for small failures, but the AWS Status Page has routinely failed to report large scale outages.