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

[Profiling] Add validations to settings #175972

Merged

Conversation

ElenaStoeva
Copy link
Contributor

@ElenaStoeva ElenaStoeva commented Jan 31, 2024

Summary

In #174712, we integrated the new settings field component into the Universal profiling settings. The new setting field supports validation on the user input, based on the schema of the given setting.

Since some of the Universal profiling settings have schema with specified restrictions, which were not enforced in the UI before, this PR adds schema validation so that they are enforced.

Settings with schema restrictions:
observability:profilingCo2PerKWH: >= 0
observability:profilingDatacenterPUE: >=0
observability:profilingPerVCPUWattX86: >=0
observability:profilingPervCPUWattArm64: >=0
observability:profilingAWSCostDiscountRate: >=0 and <=100
observability:profilingCostPervCPUPerHour: >=0 and <=100

Screenshot 2024-01-31 at 14 08 10

@ElenaStoeva ElenaStoeva self-assigned this Jan 31, 2024
@ElenaStoeva
Copy link
Contributor Author

/ci

@ElenaStoeva ElenaStoeva added release_note:skip Skip the PR/issue when compiling release notes Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more labels Jan 31, 2024
@ElenaStoeva ElenaStoeva marked this pull request as ready for review January 31, 2024 14:39
@ElenaStoeva ElenaStoeva requested a review from a team as a code owner January 31, 2024 14:39
@elasticmachine
Copy link
Contributor

Pinging @elastic/platform-deployment-management (Team:Deployment Management)

Copy link
Contributor

@cauemarcondes cauemarcondes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ElenaStoeva ElenaStoeva enabled auto-merge (squash) January 31, 2024 15:28
@kibana-ci
Copy link
Collaborator

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] FTR Configs #2 / aiops log rate analysis with 'ft_farequote' farequote with spike displays index details

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
profiling 398.7KB 399.0KB +283.0B

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

cc @ElenaStoeva

@ElenaStoeva ElenaStoeva merged commit 405f614 into elastic:main Feb 1, 2024
19 checks passed
@kibanamachine kibanamachine added v8.13.0 backport:skip This commit does not require backporting labels Feb 1, 2024
@ElenaStoeva ElenaStoeva deleted the profiling-settings/add-validations branch February 1, 2024 17:26
fkanout pushed a commit to fkanout/kibana that referenced this pull request Feb 7, 2024
## Summary

In elastic#174712, we integrated the new
settings field component into the Universal profiling settings. The new
setting field supports validation on the user input, based on the schema
of the given setting.

Since some of the Universal profiling settings have schema with
specified restrictions, which were not enforced in the UI before, this
PR adds schema validation so that they are enforced.

**Settings with `schema` restrictions:**

[observability:profilingCo2PerKWH](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L492):
>= 0

[observability:profilingDatacenterPUE](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L469):
>=0

[observability:profilingPerVCPUWattX86](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L425):
>=0

[observability:profilingPervCPUWattArm64](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L440):
>=0

[observability:profilingAWSCostDiscountRate](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L501):
>=0 and <=100

[observability:profilingCostPervCPUPerHour](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L523):
>=0 and <=100

<img width="1147" alt="Screenshot 2024-01-31 at 14 08 10"
src="https://github.com/elastic/kibana/assets/59341489/ace8da2e-ae0b-4d94-997b-bec3534a4bfe">

---------

Co-authored-by: kibanamachine <[email protected]>
CoenWarmer pushed a commit to CoenWarmer/kibana that referenced this pull request Feb 15, 2024
## Summary

In elastic#174712, we integrated the new
settings field component into the Universal profiling settings. The new
setting field supports validation on the user input, based on the schema
of the given setting.

Since some of the Universal profiling settings have schema with
specified restrictions, which were not enforced in the UI before, this
PR adds schema validation so that they are enforced.

**Settings with `schema` restrictions:**

[observability:profilingCo2PerKWH](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L492):
>= 0

[observability:profilingDatacenterPUE](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L469):
>=0

[observability:profilingPerVCPUWattX86](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L425):
>=0

[observability:profilingPervCPUWattArm64](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L440):
>=0

[observability:profilingAWSCostDiscountRate](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L501):
>=0 and <=100

[observability:profilingCostPervCPUPerHour](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L523):
>=0 and <=100

<img width="1147" alt="Screenshot 2024-01-31 at 14 08 10"
src="https://github.com/elastic/kibana/assets/59341489/ace8da2e-ae0b-4d94-997b-bec3534a4bfe">

---------

Co-authored-by: kibanamachine <[email protected]>
fkanout pushed a commit to fkanout/kibana that referenced this pull request Mar 4, 2024
## Summary

In elastic#174712, we integrated the new
settings field component into the Universal profiling settings. The new
setting field supports validation on the user input, based on the schema
of the given setting.

Since some of the Universal profiling settings have schema with
specified restrictions, which were not enforced in the UI before, this
PR adds schema validation so that they are enforced.

**Settings with `schema` restrictions:**

[observability:profilingCo2PerKWH](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L492):
>= 0

[observability:profilingDatacenterPUE](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L469):
>=0

[observability:profilingPerVCPUWattX86](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L425):
>=0

[observability:profilingPervCPUWattArm64](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L440):
>=0

[observability:profilingAWSCostDiscountRate](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L501):
>=0 and <=100

[observability:profilingCostPervCPUPerHour](https://github.com/elastic/kibana/blob/9ee7b79d20e982eaae96c0b803ff2d17f98bbfcc/x-pack/plugins/observability/server/ui_settings.ts#L523):
>=0 and <=100

<img width="1147" alt="Screenshot 2024-01-31 at 14 08 10"
src="https://github.com/elastic/kibana/assets/59341489/ace8da2e-ae0b-4d94-997b-bec3534a4bfe">

---------

Co-authored-by: kibanamachine <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport:skip This commit does not require backporting release_note:skip Skip the PR/issue when compiling release notes Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more v8.13.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants