-
-
Notifications
You must be signed in to change notification settings - Fork 465
Closed
Labels
Description
Integration
sentry
Java Version
17
Version
8.21.1
Steps to Reproduce
- I can pass my own transport factory via options, in case I don't want to just send the Sentry events via http to DSN:
sentry-java/sentry/src/main/java/io/sentry/SentryOptions.java
Lines 1181 to 1184 in 23d6b12
public void setTransportFactory(@Nullable ITransportFactory transportFactory) { this.transportFactory = transportFactory != null ? transportFactory : NoOpTransportFactory.getInstance(); } - To do this, I have to implement the ITransport interface - https://github.com/getsentry/sentry-java/blob/main/sentry/src/main/java/io/sentry/transport/ITransport.java
- This interface defines a method
send, and the first parameter isSentryEnvelope. Makes sense. - https://github.com/getsentry/sentry-java/blob/main/sentry/src/main/java/io/sentry/SentryEnvelope.java#L14-L15 - it turns out SentryEnvelope is marked as Internal. Just as a lot of other things.
SentryEnvelopeHeader, SentryEnvelopeItem, SentryEvent is not, but SentryItemType is.
Expected Result
I can define my custom transport and override sending the events, as something supported by the API.
Actual Result
The relevant code is marked as Internal, making tools like intellij plugin compat verifier fail.
Here are some screenshots:

Metadata
Metadata
Assignees
Labels
Projects
Status
No status