use custom error to capture source #791
Closed
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.
Currently a lot of plugins, including in core grafana, partner, enterprise etc don't consistently return errors. It's a bit unclear as to when an error should be returned vs returning a response with an error.
If a plugin fails to connect during QueryData, should it return an error? or return a response with an error? Because it is unclear, many plugins return an error in that scenario.
Regardless, rather than change all the plugins, we can just return an error that includes the source.
Had to move the custom error out of experimental to avoid a cycle. The real change is here.
NOTE: this only allows returning a custom error in the response, rather than an error_source. we still need a way to handle returning a custom error, outside of the response, that includes the error source