Feat: Dynamic sampling#1004
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #1004 +/- ##
==========================================
+ Coverage 89.66% 89.91% +0.24%
==========================================
Files 106 113 +7
Lines 3329 3539 +210
==========================================
+ Hits 2985 3182 +197
- Misses 344 357 +13 ☔ View full report in Codecov by Sentry. |
| meta: ^1.3.0 | ||
| stack_trace: ^1.10.0 | ||
| uuid: ^3.0.0 | ||
| intl: ^0.17.0 # TODO remove or vendor it (its a dart.dev lib) |
There was a problem hiding this comment.
See https://github.com/getsentry/sentry-dart/pull/1004/files#r974958847
We can either vendor this class or accept it, its a lib maintained by the Dart team, 19 months no new releases
There was a problem hiding this comment.
Since these decisions can be more 'platform' specific, I'll defer this to you and community. We've had a few dependencies so far without issues.
There was a problem hiding this comment.
Is this a dependency most users would add anyways? If so I'd say it's fine to add if we expect to need more stuff from it. If it's just the number formatting for APIs maybe we should replace it with custom code instead? Basically we just need to convert the double to a string that doesn't use exponent notation.
There was a problem hiding this comment.
Since it's not part of the standard lib, I'd say so, it's an official lib btw.
Dart does code stripping so bundle size is also not a concern.
The class that does it is quite big and complex, and obviously handles more cases.
https://stackoverflow.com/questions/62989638/convert-long-double-to-string-without-scientific-notation-dart
I'd rather use the lib then so it works on every platform without no surprises, including JS.
| @@ -1,5 +1,5 @@ | |||
| # Uncomment this line to define a global platform for your project | |||
| platform :ios, '9.0' | |||
| platform :ios, '11.0' | |||
There was a problem hiding this comment.
Because of the new Xcode, it does it automatically, but its just the sample.
|
Everything looks good. Just need to check why CI is not happy. |
adinauer
left a comment
There was a problem hiding this comment.
Left some comments and questions.
| meta: ^1.3.0 | ||
| stack_trace: ^1.10.0 | ||
| uuid: ^3.0.0 | ||
| intl: ^0.17.0 # TODO remove or vendor it (its a dart.dev lib) |
There was a problem hiding this comment.
Is this a dependency most users would add anyways? If so I'd say it's fine to add if we expect to need more stuff from it. If it's just the number formatting for APIs maybe we should replace it with custom code instead? Basically we just need to convert the double to a string that doesn't use exponent notation.
| for (final keyValueString in keyValueStrings) { | ||
| // TODO: Note, value MAY contain any number of the equal sign (=) characters. | ||
| // Parsers MUST NOT assume that the equal sign is only used to separate key and value. | ||
| final keyAndValue = keyValueString.split('='); |
There was a problem hiding this comment.
Java SDK now looks for the first = and splits there instead of splitting on every =. I think this was discussed internally to not have to be changed immediately tho.
There was a problem hiding this comment.
yes, not for now, no SDK handles that so far, so it's a separate issue/TODO.
|
Ignore |
|
📜 Description
https://develop.sentry.dev/sdk/performance/dynamic-sampling-context/
💡 Motivation and Context
https://docs.sentry.io/product/data-management-settings/server-side-sampling/
Issues addressed:
Similar to #604 but with a different name https://develop.sentry.dev/sdk/performance/#tracepropagationtargets getsentry/team-mobile#39
getsentry/team-mobile#44
getsentry/team-mobile#30
💚 How did you test it?
Not yet
📝 Checklist
🔮 Next steps