3 ms·
Canary works for immediately broken deploys. If it manifests or is caught a few days later or a week later then you need a new plan
by redisman 6y ago
Canary works for immediately broken deploys. If it manifests or is caught a few days later or a week later then you need a new plan
- gravypod 6y agoYou can also collect code coverage statistics from this canary deploy. I don't know if this is possible with EBS but I've done it with JVM apps where you can connect a debugger remotely. Keep running the canary until 100% of code paths are hit. If a code path isn't hit, find out why and repeat. It's also a great way to empirically find dead code.
- touisteur 6y agoTrying to build something like this with Intel PT, and it's great. I used to do it with a patched libgcov, but now it's even better. Getting counters for every code branch, notifications after a new path has been taken once N% coverage is reached, liveness info about periodic tasks, I/O threads, execution times too.
- gravypod 6y agoI think it's probably the best way to be "sure" about your code and unfortunately this is an area that is under-tooled.