5 ms·
>As now we've introduced some peers code review, automatic testing on most critical stuff (but since the codebase sucks these aren't really reliable tests) The
by Jugurtha 3y ago
>As now we've introduced some peers code review, automatic testing on most critical stuff (but since the codebase sucks these aren't really reliable tests)
They may not be "reliable", but these are your safety net, or harness, so you don't fall. I wrote about similar issues, for instance here: https://news.ycombinator.com/item?id=26591067 https://news.ycombinator.com/item?id=26591067 and, given your promotion, here: https://news.ycombinator.com/item?id=37211796 https://news.ycombinator.com/item?id=37211796. It contains a few steps starting from "So...".
You can add monitoring, something like Sentry (https://sentry.io https://sentry.io) will capture exceptions that were not handled that you have not seen because the stack trace is buried in hundreds of pages of logs or something. It groups them by exception and counts them. It's pretty awesome. (https://docs.sentry.io https://docs.sentry.io). It supports around 108 platforms (Java, Python, JavaScript, etc.). This lets you see the exceptions and makes prioritizing easier (which ones are the most frequent, which ones impact the most, etc.).
If you don't have them already, issue templates are really useful and the comment I linked to explains why, but here's an example of an issue template (again, you can configure them for different types of issues so team members select from a dropdown for a bug or a feature):
<!--These are comments and will not be rendered. Please click Preview to check.-->
### Description
----------------
<!--Describe the problem we'll solve. What, where, when, who, why, and how.-->
### Target
----------
<!--Who's the target audience? Who'll enjoy this the most or is suffering from this bug or
lacking this feature the most? Is this a problem you have? Have you talked
with other people who have this problem? Maybe it's something that would just be cool?
Is it a seed for an idea that could be cool?
-->
### Instances
-------------
<!--Can you describe the times this problem has happened for you or others-->
### Proposal
------------
<!--What's the plan to solve this problem? Do we have a candidate solution or a hunch?
A list of steps? It's okay if they are a bit vague for now. We'll clarify
by debating them and adding context to them, reading more about the subject. It's
essential to understand that this document serves to capture thoughts and externalize
thought processes so we can all tackle the problem more effectively.
-->
### Resources
-------------
<!--Any recommended reading about this? Videos to watch about something similar?
Maybe a blog post, documentation pages, a code snippet? Sketch, images, mock-ups, etc...
-->
/label ~feature
/cc @odle
<!-- You will get an email with every event on that issue -->
- odle 3y agothank you for your help, I'll implement what you suggested in the linked topics (improve the pipeline, code coverage and all the other management topics). About sentry, we've something similar, it's a manual integration with Elasticseach/Kibana, but it's shit. On the other hand, trying to use something like sentry instead, would look bad (it's about politics...)
- Jugurtha 3y agoI think you're using Elasticsearch/Kibana for logging. Sentry is mainly for exceptions and errors. You can self-host it: https://github.com/getsentry https://github.com/getsentry. The integration is probably fewer than 10 lines of code; it sits on top and you don't have to change how your code works or send things its way, Sentry does the capturing itself, so you wouldn't be using it instead of your E[?L]K stack, but in addition to it for exception monitoring. Not wanting to at least try it, or something similar to catch exceptions, especially when the current system isn't delivering, is what should look bad.