Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Hawk 2.0] Features for new catcher version #57

Open
nikmel2803 opened this issue Mar 26, 2021 · 0 comments
Open

[Hawk 2.0] Features for new catcher version #57

nikmel2803 opened this issue Mar 26, 2021 · 0 comments

Comments

@nikmel2803
Copy link
Member

nikmel2803 commented Mar 26, 2021

The new version of the Hawk allows us to implement new features for the python catcher.
We need to implement support for these features. Common features and requirements are listed in this document

The following table lists all the things we need to implement:

Feature name Why / Value for user Linked issue/PR Status
Bind global error handler To catch all unhandled errors and send them to the collector
Send caught errors to the hawk using universal Event Format It is necessary to convert the error to a common format before sending, so we can process that error
Collect and send code fragments for each line of Stacktrace To display piece of code where error occurred in garage
Allow to send events to the Hawk manually User may want to send event to hawk manually (for example, he handled error in try/catch and additional wants to send error to see it in garage)
Allow users to specify free-format context object with any data. Context can be specified globally (on initialization) and with every manually sent event. If both present, they should be merged. To display provided context in garage for easier debugging
Allow passing user object with a currently authenticated user, see Event Format. When user is not specified, the catcher should generate user with {id: 'user-unique token'} so Hawk can calculate Affected Users count. To display affected users count and see info about users who encountered an error
The catcher can pass language-specific data through the addons field To display specific fields for each language in the garage (e.g. POST- and GET-data). Need needs to be considered separately for each language
If possible, runtime variables values should be extracted from the Stacktrace and passed to the Hawk. To display variables from runtime that caused error throwing. We need a research opportunity to do it for each language
Send catcher version with event To recommend user update his catcher version if he uses the old one
Send Suspected Commits using git To display possible commits that can lead to the error
If possible, the Catcher should send error levels (Fatal, Warning, etc) To display it in garage
If possible, the Catcher should have an interface for integration with popular loggers. For example, Monolog for PHP. For easier Hawk integration
Remove sensitive data before sending events (e.g. password, tokens, etc) To improve security #58 WIP
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant