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

KG - Improved Epic Interface Push Error Handling #2273

Merged
merged 2 commits into from Apr 3, 2020

Conversation

kayla-glick
Copy link
Contributor

https://www.pivotaltracker.com/story/show/164840135

Background:

With the Protocol Update functionality of our SPARC/Epic interface, for protocols that have already been pushed to Epic before, when there's an user change/update in SPARC, the protocol (and protocol information only piece) is being queued and batch updated to Epic daily. However, we found out that if one of the protocol is missing a validation (such as missing study type answers), the rest of the queue is skipped.

Acceptance Criteria:

Please look into ways to handle this type of errors more gracefully, so that if it happens again in the future, 1 failed protocol update is skipped, but the rest of the queue will still be pushed to Epic.

Notes from Kayla

  1. The `Protocol#push_to_epic method already had a begin/rescue to log failed pushes. I expanded on this by including the error message and backtrace for improved tracking. In the future this could be expanded to an email notification or slack message.
  2. Because Protocol#push_to_epic raises the exception after rescuing it, we have to add another begin/rescue in the send_to_epic task. We have error handling like this elsewhere in the app to handle these exceptions.

app/models/protocol.rb Outdated Show resolved Hide resolved
@Stuart-Johnson Stuart-Johnson merged commit 0fff35f into v3.7.0 Apr 3, 2020
@Stuart-Johnson Stuart-Johnson deleted the kg-epic_interface_error_handling branch April 3, 2020 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants