Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR integrates sentry into the subnet's code.
Sentry is a toolkit that captures exceptions and sends all relevant information to a central server, where this information can be viewed in a dashboard. Sentry can integrate with github, so problems can be triaged, and allocated to teammembers.
All except statements have been hooked, as to create a full overview what is going wrong in the codebase. This means you will get unhandled (really bad) and handled exceptions (maybe bad). The unhandled ones should be resolved first, as this is a script breaking. The handled ones allow you to see if any weird stuff is happening. If the issue is not weird at all, those events can be muted in the dashboard.
In order to get this running, you will need to create an account and create a project. You will be given a trial first, then you'll need to select a paid plan or you'll get busted to the "Developer plan". This project will give you a dsn. Both validator and miner can be started with the
--sentry-dsn <dsn>
parameter. When this flag is enabled, sentry is enabled and will start sending information to the server.You can choose to withhold the dns and only run it in a test-net. However, if you make the dsn public, all participants in the network that specify the parameter will report error information. This should allow you to quickly react to fatal problems and put out patches.
I have hooked all my validators in a similar fashion, but I get so many exceptions that I can't really all SN owners of the problems, so it makes more sense to have the SN owners handled this themselves.
Note, this PR has been tested for validator only. As I don't run any miners, this should be verified for miners as well.
If you feel this PR is worthy of a reward, TAO's can go to
5FZ3Cyq4wNX6rgiTD6kSEovZ6hcvcej6N3uwV68ELb6vwQo4
Greets,
Your trusty l0lpusher69