Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ensure correct measurements when trimming transactions #107

Open
2 of 6 tasks
philipphofmann opened this issue Apr 17, 2023 · 3 comments
Open
2 of 6 tasks

Ensure correct measurements when trimming transactions #107

philipphofmann opened this issue Apr 17, 2023 · 3 comments

Comments

@philipphofmann
Copy link
Member

philipphofmann commented Apr 17, 2023

Idle transactions trim the end time stamp when finishing to the end time stamp of the last span. Our SDKs must ensure that all measurements they attach to the transaction are correct when trimming its end time stamp.

The Cocoa SDK, for example, wrongly sets the amount of slow and frozen frames when the idle time out times out. To fix this problem, the tracer must store all measurements when the last span finishes and use the stored measurements when trimming the transaction.

Wrong

|- transaction  -|
|-- span 1 --|
  |--- span 2 ---| 
                 | ------ idle timeout ------- |
                                               | get slow and frozen frames
                                                                      

Correct

|- transaction  -|
|-- span 1 --|
  |--- span 2 ---| 
                 | ------ idle timeout ------- |
                 | get slow and frozen frames

If the SDK already applies that behaviour, simply check the checkbox, otherwise please create an issue.

Tasks

  1. Platform: Cocoa Type: Bug
  2. Platform: Android Platform: Java
    markushi
  3. Metrics Platform: Dart enhancement flutter performance
  4. Platform: React-Native
@markushi
Copy link
Member

Let's have a look at this after frame-delay, as it will give us the timestamps for slow and frozen frames - which then can be used for trimming.

This also affects profiling.

@marandaneto
Copy link

Removing the Dart label till we figure out if we are going to implement it on native SDKs, or not at all after changing the approach.
It's also possible this is automatically fixed by getsentry/sentry-dart#513

@bitsandfoxes
Copy link

Removing the Unity label because it'll inherit this from .NET.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Needs Discussion
Development

No branches or pull requests

6 participants