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

Search and setup tools to collect performance metrics from the app #4351

Closed
Tracked by #4155
Mayons95 opened this issue Jul 21, 2022 · 2 comments
Closed
Tracked by #4155

Search and setup tools to collect performance metrics from the app #4351

Mayons95 opened this issue Jul 21, 2022 · 2 comments
Assignees

Comments

@Mayons95
Copy link
Contributor

We need to improve the use of some performance tools to know which metrics we manage in different part's of the app.
With these, we are going to know what can be improved and in which way.

The suggested tools are:

Sitespeed.io

  1. With this tool we can code some automated scenarios with the navigation on the app, and the tools collect all the metrics and show a report at the end of the execution.
  2. It seems pretty similar to our automated test cases in the use, so I consider that we can explore the use of this tool.

JMeter

  1. This tool it's orientated to analyze the behavior of the backend request
  2. This would allow us to identify and enhance all the requests that could be improved to have a better performance
@Mayons95 Mayons95 self-assigned this Jul 21, 2022
@asteriscos asteriscos self-assigned this Jul 21, 2022
@Mayons95
Copy link
Contributor Author

After some research I could execute a scenario with Sitespeed navigating from the login page to the agent section of the app recollecting some metrics.
I attached a ZIP File. In the index.html you are going to be able to see all the metrics that were collected.
2022-07-20-16-59-54.zip

image

Also today with @asteriscos we investigate how we can collect the different API request that the app generates in a normal use.
We were able to connect JMeter recording tool to Wazuh App to collect different API requests and perform different's test scenarios.
I left here a screenshot of the report generated by JMeter with the next scenario:
Login to Wazuh App
Navigate to Agents Dashboard

image

The next steps we suggest is to define:

  1. Environments to work (Dev & Prod)
  2. Scenarios to design and test.

C.C: @asteriscos @gdiazlo

@asteriscos
Copy link
Member

asteriscos commented Jul 26, 2022

Thoughts

After analyzing the two solutions we considered in this issue, we decided to continue working with Sitespeed because:

  1. It has reusable test scenarios for different environments. We just need to change the CSS selectors to perform a new test in a different environment. If the requests change there's no need to change the script.
  2. Sitespeed reporting is more user friendly, it has more metrics to analyze about the performance test execution.
  3. Sitespeed also integrate metrics from the UI, that's JMeter does not.
  4. Sitespeed has a HAR compare functionality where it's possible to compare two Sitespeed test execution by a HAR file generated by the tool itself. This could be very useful to analyze how much the changes that we are going to implement actually improve the application performance

Screenshot from 2022-07-26 18-51-14

As part of this tool analysis and for the time being, we are developing the testing scripts in this repository.

@AlexRuiz7 AlexRuiz7 changed the title Search tools to collect some metrics to know the performance level of the app Search and setup tools to collect performance metrics from the app Aug 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants