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

Unify monitoring metrics values for child processes with those of the main process #5479

Closed
2 tasks
Rebits opened this issue Jun 11, 2024 · 1 comment · Fixed by #5500
Closed
2 tasks

Unify monitoring metrics values for child processes with those of the main process #5479

Rebits opened this issue Jun 11, 2024 · 1 comment · Fixed by #5500
Assignees

Comments

@Rebits
Copy link
Member

Rebits commented Jun 11, 2024

Description

The current monitoring class records metrics separately for the main process and its child processes, leading to potential inconsistencies and difficulties in data aggregation, comparison and analysis.
For example, in Release 4.8.0 - RC 4 - Vulnerability Detection performance test wazuh-indexer binary metrics split child metrics from main process:

CPU

To enhance the accuracy and usability of monitoring data, unify the metrics collected for child processes with those of the main process.

Tasks

  • Design a unified monitoring strategy that consolidates child process metrics.

Validation

  • Processes with multiple child processes appear in metrics as one..
@rafabailon
Copy link
Member

rafabailon commented Jun 13, 2024

Procedure

First the Monitor is launched. This is in charge of monitoring different data and registering them to, later, store them in a CSV file. A CSV file is generated for each process and for each subprocess.

These CSV files are used in the DataVisualizer to generate the plots. What the DataVisualizer does is to take the necessary parameters from each CSV to generate the plot. Each plot contains a specific data of each CSV. Therefore, in each plot, all the processes and subprocesses are painted.

Proposed Solution

Create a new method in DataVisualizer that takes data from all processes and unifies them. The data loaded in dataframe has to be unified so that, at the moment of generating the plots, it generates a plot with a single process that combines the data of all the processes and subprocesses.

A parameter must also be added to the DataVisualizer to decide when to unify the data. This parameter has to be included in the test pipeline to be able to choose whether to unify the data or not.

To check that it works, you have to run the pipeline telling it to unify the data and check the artifacts to see if the plots are correct.

Additional Information

The proposed solution is as simple as possible since the issue https://github.com/wazuh/wazuh-jenkins/issues/6571 will include the refactor of the DataVisualizer class.

@rafabailon rafabailon linked a pull request Jun 14, 2024 that will close this issue
@wazuhci wazuhci moved this from In progress to Pending review in Release 4.8.1 Jun 14, 2024
@wazuhci wazuhci moved this from Pending review to In review in Release 4.8.1 Jun 17, 2024
@wazuhci wazuhci moved this from In review to On hold in Release 4.8.1 Jun 17, 2024
@wazuhci wazuhci moved this from On hold to In progress in Release 4.8.1 Jun 17, 2024
@wazuhci wazuhci moved this from In progress to Pending review in Release 4.8.1 Jun 18, 2024
@wazuhci wazuhci moved this from Pending review to In review in Release 4.8.1 Jun 19, 2024
@wazuhci wazuhci moved this from In review to On hold in Release 4.8.1 Jun 19, 2024
@wazuhci wazuhci moved this from On hold to In progress in Release 4.8.1 Jun 19, 2024
@wazuhci wazuhci moved this from In progress to Pending review in Release 4.8.1 Jun 19, 2024
@wazuhci wazuhci moved this from Pending review to In review in Release 4.8.1 Jun 20, 2024
@wazuhci wazuhci moved this from In review to Pending final review in Release 4.8.1 Jun 20, 2024
@wazuhci wazuhci moved this from Pending final review to In final review in Release 4.8.1 Jun 20, 2024
@wazuhci wazuhci moved this from In final review to On hold in Release 4.8.1 Jun 20, 2024
@wazuhci wazuhci moved this from On hold to Pending final review in Release 4.8.1 Jun 20, 2024
@wazuhci wazuhci moved this from Pending final review to Done in Release 4.8.1 Jun 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants