-
Notifications
You must be signed in to change notification settings - Fork 26.7k
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
Improve performance measurement usability #102189
Comments
Ideally I'd like to have this data also available in release builds, so I can integrate this data with application performance monitoring tools, like Sentry, DataDog and so on.
I'm currently experimenting with using HttpOverrides and IOOverrides to achieve this. That works quite good. |
Is it that you want to test in release, or you want your release app sending back metrics for use? |
The latter one. I want to send back metrics for use. |
It'd be awesome if at runtime you could collect telemetry data and send it over to observability services such as sentry.io to aggregate and extract information about the performance of your app and compare it across new versions of the app, device models, brands, etc... |
…ease mode (#134922) When it comes to startup profiling, it is very helpful to look at platform channels. `debugProfilePlatformChannels` today only works in debug and profile mode. Unfortunately, using profile mode is less accurate for startup profiling, because of the service isolate introducing additional overhead. This PR allows this toggle to work in release mode. Note that there are two parts to `debugProfilePlatformChannels`: - Adding timeline events - Logging statistics about platform channels I also considered adding a separate toggle to limit the scope of this change to the former, but that seems like complexity that we might not need at this time. Towards #102189
…ease mode (flutter#134922) When it comes to startup profiling, it is very helpful to look at platform channels. `debugProfilePlatformChannels` today only works in debug and profile mode. Unfortunately, using profile mode is less accurate for startup profiling, because of the service isolate introducing additional overhead. This PR allows this toggle to work in release mode. Note that there are two parts to `debugProfilePlatformChannels`: - Adding timeline events - Logging statistics about platform channels I also considered adding a separate toggle to limit the scope of this change to the former, but that seems like complexity that we might not need at this time. Towards flutter#102189
As a developer, I want to run some portion of my app and get information about:
I would like to get this information with minimal impact on actual performance of my application.
A lot, but not all of this information is available in the timeline today. Some of this information is currently provided on some platforms, whereas on other platforms it is missing or only available via polling that devtools may do.
It would probably be best to start with some of our existing performance benchmarks and see what we can do to get the output to look more like this. We should also evaluate whether we can use timeline/perfetto tracing or not and how much of an impact it is having on performance as part of this bug.
/cc @gaaclarke @iskakaushik - I think this intersects with some of the work you're currently doing.
/cc @jiahaog fyi
/cc @kenzieschmoll @polina-c @jacob314 for devtools input
The text was updated successfully, but these errors were encountered: