-
Notifications
You must be signed in to change notification settings - Fork 93
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
Tools to collect performance metrics #64
Comments
@lolautruche @josephscott Pinging you here since you both already had some ideas and made progress on potential tools to collect performance metrics. #63 is also related to that. |
Hey there 👋 Thank you @felixarntz Eventually, when we have defined metrics and tests, we may define scenarios, which can be run e.g. for each PR, or each time we push a commit. This works best with Platform.sh integration:
|
Regarding metrics, I wrote several articles explaining what we can do with them in Blackfire: |
Any thoughts of using Xdebug with the profiling flag? This is free, open source, easy enough to setup locally and very powerful if used with CacheGrind. I use Kcachegrind, but any other would do... |
I cant speak too much to the backend profiling here, but wondering if we should go barebones on measuring frontend metrics. I've seen some of the Performance Advocates at Google use the web vitals library on their own personal endeavours: https://www.npmjs.com/package/web-vitals#basic-usage Some motivations: Pros
Cons:
The other benefit is that this library allows us to send this data in a meaningful way to a report, endpoint or dashboard which could be really useful for reporting not only to the WordPress Admin / Dashboard but we could also help users with sending data to Google Analytics and Google Tag Manager or even Firebase The code has great support all the way back to IE 9. |
I have been working on a proposal looking into tools we can use for capturing frontend performance metrics as well as #63 Define a list of metrics that we need to measure. (document here) One potential solution for collecting metrics could be Lighthouse CI. This would be used to run automated Lighthouse audits within the CI pipeline to test performance as features are being developed and before they are released. There are a number of benefits and features that come with it, such as configuring how many runs, what URLs to test and running assertions against a Performance Budget ( It can also be paired with Lighthouse CI server which provides a dashboard where developers can compare performance between different commits. There is also a GitHub Action available that we could potentially use as a quick starting point. |
Since this issue was initially opened, we've documented the tools we use for measurement in our handbook: https://make.wordpress.org/performance/handbook/measuring-performance/ Closing this as complete, and we can open new tickets for any follow-up work. |
Once we figure out the list of metrics (#63) that we need to measure, we will need to select which tools we want to use to collect metrics. Ideally, all contributors should be able to run these tools on their own computers without any limitations.
Please, suggest tools that you think we would need to use and provide some details about why we should use them.
Tools to track frontend metrics
Tools to track backend metrics
The text was updated successfully, but these errors were encountered: