-
-
Notifications
You must be signed in to change notification settings - Fork 333
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ref: slice profiles per transaction (#2545)
Send profiling data up attached to transaction envelopes. This is required for dynamic sampling to work for profiling. To do so, track tracer instances to determine when to start and stop profiler, and track the tracer's system start time, passing it to transactions, and track transaction end system time, so profiling/metric data can be sliced per transaction. * ref: extract methods for separate tasks involved in serializing/transmitting profile envelopes * ref: rename captureEnvelopeItem... to createEnvelopeItem... * ref: remove @synchronized scope for profiler start method which is now called in the context of a lock_guard scope Some changes specific to how profiler starts and stops: * don't stop current profiler and start a new one if started concurrently, just bail and let the current one keep going; this was an assumption from the nonconcurrent profiling days, and in any case, this shouldn't even happen here because we do the same check in the class method that calls through to this * don't nil out profiler until after serialization for abortive stops * fix: measurements must be sibling, not child, of profile in the JSON structure * fix: use system timestamps for GPU frame render info instead of the CADisplayLink's timestamp, which is actually a duration, not a point in time * test: only pop clang diagnostic if it was added for TSAN runs * test: change how profiler timeout interval is set in tests, and reset at end to avoid subsequent tests using it and failing * test: reenable some disabled profiling tests * test: fix conditional compilation and profiling assertions for frames tracker, add test point for frame rate tracking * test: repeat concurrent span test logic a second time to ensure no state leakage from profile to profile and that it starts and stops and starts again OK
- Loading branch information
1 parent
eaa1002
commit efb2222
Showing
19 changed files
with
863 additions
and
491 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.