getsentry / sentry-java

A Sentry SDK for Java, Android and other JVM languages.
https://docs.sentry.io/
MIT License
1.14k stars 432 forks source link

Make Access Modifier For Transaction.UpdateStartDate Public #3639

Open sentryadam0000345 opened 4 weeks ago

sentryadam0000345 commented 4 weeks ago

Problem Statement

In some rare cases we aren't ready to use sentry yet but would like to start a trace. Updating end date is enough right now, can still construct whatever length we want though it would be nice to be able to set the start/end to the actual times something happened.

Specifically, this is in regards to overriding the duration value of an event. In particular, overriding the duration value for a custom Performance Span.

Solution Brainstorm

It seems like the change here should be fairly easy. Just change the access modifier to public from private like it is set for updateEndDate.

Here are the relevant lines in the SDK that I found that would need to be looked at/changed:

https://github.com/getsentry/sentry-java/blob/9762f09afa51944b40a9b77e116a55e54636e6c5/sentry/src/main/java/io/sentry/Span.java#L393

https://github.com/getsentry/sentry-java/blob/9762f09afa51944b40a9b77e116a55e54636e6c5/sentry/src/main/java/io/sentry/Span.java#L420

┆Issue is synchronized with this Jira Improvement by Unito

adinauer commented 2 weeks ago

We'll discuss implications and update here.

adinauer commented 2 weeks ago

Would it also suffice, if we allow setting the start date when starting a span?

zsperske commented 2 weeks ago

Yes that would work too!

markushi commented 1 week ago

In the meantime this could be solved using beforeSendTransaction.