Reporting of Appium session success statuses to Bugsnag #728
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.
Goal
Send reports for Appium session outcomes to Bugsnag, overloading the product as a database and UI with search functionality. This will allow us to monitoring the overall stability of Appium sessions created and the frequency with which certain errors occur.
Design
A new environment variable,
MAZE_APPIUM_BUGSNAG_API_KEY
is used to specific the Bugsnag project to send reports to. When an Appium session is created, a newSessionMetadata
object is created to start capturing details about the session - some of which do not become available until the end of the run.Successful Appium sessions are modelled by errors with a message of simply "Success" and severity
info
. When a session fails, the exception message is captured and used for the report. In future we may want to perform some processing on these messages to group them into more abstract categories before sending the report to Bugsnag.Tests
The Maze Runner pipeline is set up to make reports and results can be found here. At the time of raising this PR, some failure cases were synthesised by artificially raising an error in the code locally.