Expose ITransport and Friends Publicly
See original GitHub issueWe are trying to pump existing exceptions and error reports into Sentry from a central ingress point (the producers unfortunately cannot use the Sentry/Raven client directly as we need to control the transport and data captured). We were hoping to use Sentry
as a SDK (as the REST documentation is a little hard to find).
The models exist and the serializiation logic is there, but everything e.g. EnvelopeHttpContent
, HttpTransport
, etc. that can use these models, are internal.
I propose decoupling SDK logic from Sentry proper or make these internal types public with no API SLA.
This would be on top of the work in https://github.com/getsentry/sentry-dotnet/pull/944
Issue Analytics
- State:
- Created 2 years ago
- Comments:6 (4 by maintainers)
Top Results From Across the Web
Have you ever made friends on public transportation?
Yes. Many years ago, I started chatting with a guy on the #4 train to Yankee Stadium, and we became friends. We don't...
Read more >On the road again: Factors associated with family/friend ...
Paratransit, public transport, taxis, and walking/using a wheelchair/scooter are other viable alternative transportation options. These modes can offer feelings ...
Read more >Why rely on friends instead of family? The role ...
Social science research has shown there is a nearly universal norm of seeking assistance from family members in times of need.
Read more >I'm (17) not allowed to have friends over, go ...
I'm (17) not allowed to have friends over, go to friends houses, learn to drive, and get a job. I don't have public...
Read more >Ask Amy: He wants me to meet his random Facebook 'friends'
To randomly collect friends that you have no personal background with seems desperate and unwise. Concerned Wife. Dear Concerned: Any time you ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
I think complete encapsulation of the SDK logic would be preferred (the models, the serialization logic, the transport abstractions, the http transport implementation) - but there currently exists some rather deep coupling e.g. exposing Exception on the sentry event, but requiring processing later on to copy the data into the final property for processing.
Exceptions in general would need to be decoupled away from the SDK - including “enhanced stacks”. In my use-case, I don’t have the original exception - I have to parse the stack trace to get it to place nice.
When just making the parts I needed public, I had a lot of difficulty resolving all the warnings and eventually just disabled errors on warnings. There were around 2k warnings on my branch (many came from the submodule for example).
My changes to encapsulate the SDK logic would be rather invasive to decouple the different components - then on top of that, there’s the XML documentation warnings that would take a lot of effort to add - and the CLS compliant warnings. So getting anywhere without some 200 file PR, warnings would have to not break the build.
So this might not be a change I can do myself - rather the core maintainers of this SDK. FWIW, my fork does effectively work for our original needs and has entered production (custom transport pipeline and queuing) but it’s likely not something that should be merged.
Anything can be injected in to customize behavior, off the top of my head, app domain wrapping logic would be an example.
Completed with #1602 and #1560