question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Understanding performanceTimer metrics

See original GitHub issue

Hi team.

I’m playing around with the performanceTimer config option for the first time. It seems pretty great. I can’t find much about how to interpret the output so wanted to get some clarification.

This is a sample output of running a single rule on a page:

gather ( 0 ): 8641.300000071526ms
axe.js:4923 Measure audit_start_to_end took 18.699999928474426ms
axe.js:4923 Measure rule_area-alt took 16.299999952316284ms
axe.js:4923 Measure rule_area-alt#gather took 15.800000071525574ms
axe.js:4923 Measure rule_area-alt#matches took 0ms
axe.js:4923 Measure runchecks_area-alt took 0.10000002384185791ms
axe.js:4923 Measure axe took 311.8000000715256ms

It looks like this last output is a measure of the total time it takes for the axe scan to complete from start to finish. What is audit_start_to_end?

I’m also trying to make sense of this gather output which doesn’t seem factored in the axe metrics. Could someone help me understand?

Issue Analytics

  • State:closed
  • Created a year ago
  • Comments:10 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
strakercommented, Jul 26, 2022

Going to close this issue as I believe the questions were answered here or offline.

1reaction
strakercommented, May 5, 2022

Thanks for the issue. So the performanceTimer option is mostly used as an internal tool to gauge how each individual rule performs on a page. The time to run all the rules is measured with audit_start_to_end, and then generating the report and all the unique selectors is measured with axe.

After that, each rule has a few different outputs to let us know how each part of a rule is performing. So #gather is the step to find all the nodes in the current page that apply to the rule, #hidden is how long it took to make sure each node was visible, #matches is how long the rule’s matcher function took on all the gathered nodes, and runchecks is how long all the checks took for all the gathered nodes. Some of those are nested inside other measurements (like #hidden is a part of #gather), so the overall total time for rule is also measured for convenience.

You can see how we’ve used it to improve performance of axe-core with a currently opened pr.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Introduction to Performance Monitoring Metrics | SmartBear
Analyzing data and metrics from your performance monitors can be tough. Lets dive into the metrics to help make things easier: Web page...
Read more >
Use metrics to understand how performance impacts your ...
mPulse considers timers to be performance data such as DNS lookup time, SSL connection time, front-end time, back-end time, and page load time....
Read more >
Performance timer - Finance & Operations | Dynamics 365
This article provides an overview of the Performance timer, which is a tool that helps you to determine why your system's performance might ......
Read more >
Understanding System Performance Metrics - YouTube
In this video, we will explain what systems performance metrics can tell you about your system and application. We will cover how to...
Read more >
8 Key Application Performance Metrics & How to Measure Them
Understand the most important application performance metrics and how they impact the success of your business. Get the top 7 most common ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found