Skip to content

[O11y][Redis Enterprise] Fix intervals in the visualizations of Overview dashboard - #9464

Merged
harnish-crest-data merged 8 commits into
elastic:mainfrom
chavdaharnish:o11y-redis-enterprise-update-visualization
May 6, 2024
Merged

[O11y][Redis Enterprise] Fix intervals in the visualizations of Overview dashboard#9464
harnish-crest-data merged 8 commits into
elastic:mainfrom
chavdaharnish:o11y-redis-enterprise-update-visualization

Conversation

@harnish-crest-data

@harnish-crest-data harnish-crest-data commented Mar 28, 2024

Copy link
Copy Markdown
Contributor

Proposed commit message

  • Fix intervals in the visualizations of Overview dashboard.
  • As per discussion with @tommyers-elastic, we need a little more thought to improve this dashboard more than just changing the agg types.

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs.
  • I have added an entry to my package's changelog.yml file.
  • I have verified that Kibana version constraints are current according to guidelines.

Related issues

Screenshots

Before

image

After

image

@harnish-crest-data
harnish-crest-data marked this pull request as ready for review March 28, 2024 06:34
@harnish-crest-data
harnish-crest-data requested a review from a team as a code owner March 28, 2024 06:34

@niraj-elastic niraj-elastic left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM!

@devamanv devamanv added the enhancement New feature or request label Apr 2, 2024
"isBucketed": false,
"label": "Total requests (ops/sec)",
"operationType": "average",
"operationType": "last_value",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Here in the label it says - Total Requests (ops/sec).

If it is a rate such as ops/sec, using average may not be entirely wrong. If it is a counter, showing last value or rate of change of the value will be appropriate.

So, what does the field description of redisenterprise.node.total_req.value: * say in the official documentation? I can't find it in the fields.yml.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Here is the official document. I agree to your point that If it is a rate such as ops/sec, using average may not be entirely wrong. Let me revert it for the visualizations that showing rate such as ops/sec or bytes/sec. Thanks!

"isBucketed": false,
"label": "System CPU time",
"operationType": "average",
"operationType": "last_value",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

If this is a gauge type, average makes more sense than last value.

"dataType": "number",
"filter": {
"language": "kuery",
"query": "redisenterprise.node.cpu_user.value: *"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

If this is a gauge type, average makes more sense than last value.

"isBucketed": false,
"label": "Connections",
"operationType": "average",
"operationType": "last_value",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Is this a counter or gauge? If counter, last_value make sense. Else gauge.

The change from avg -> last value is significant as part of this viz change. Can you create a table having information of

name of field, gauge or counter , recommended operationType value.

It will be easy to review and recommend.

@harnish-crest-data

harnish-crest-data commented Apr 5, 2024

Copy link
Copy Markdown
Contributor Author

@agithomas If any field used in the visualization is of format redisenterprise.node.*.value then it's a gauge field as per the metric_type. Else if it is like redisenterprise.proxy.*.counter then it is counter. IMO fields like redisenterprise.node.cpu_system.value, redisenterprise.node.cpu_user.value, redisenterprise.node.conns.value are showing values which are related to % cores utilization, CPU time and Number of clients connected to endpoints on node which makes sense to give priority of the last value being fetched.

@agithomas

Copy link
Copy Markdown
Contributor

@harnish-elastic ,If i have to choose an aggregation other than average, it will be as follows.

Visualization Name Field Used Aggregation Used (Before) Recommended (if not average)
System CPU time redisenterprise.node.cpu_system.value Average Average
Free ephemeral disk space redisenterprise.node.ephemeral_storage_free.value Average Last Value
User CPU time redisenterprise.node.cpu_user.value Average Average
Total client connections redisenterprise.node.conns.value Average Max
Node free memory redisenterprise.node.free_memory.value Average Min
Rate of incoming/outgoing network traffic redisenterprise.node.egress_bytes.value, redisenterprise.node.ingress_bytes.value Average Max

If I have to think of a mistake, it will be only redisenterprise.node.ephemeral_storage_free.value, where last_value() is the correct one, provided the metric is a counter.

@tommyers-elastic , can you please validate this please?

@agithomas

Copy link
Copy Markdown
Contributor

If you choose to use an aggregation function other than Avg() on any metrics other than redisenterprise.node.ephemeral_storage_free.value, please validate the viz title. It may also need a change to reflect what the viz is trying to convey to the user.

@elastic elastic deleted a comment from cla-checker-service Bot Apr 30, 2024
@ali786XI
ali786XI force-pushed the o11y-redis-enterprise-update-visualization branch from 8828a65 to 3084f77 Compare April 30, 2024 08:18
Comment thread packages/redisenterprise/changelog.yml Outdated
# newer versions go on top
- version: "0.10.0"
changes:
- description: Fix aggregations, intervals and fields used in the visualizations of Overview dashboard.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I suppose this description is not relevant anymore. Please correct.

Also, please update the PR description / title

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Updated, thanks!

@harnish-crest-data harnish-crest-data changed the title [O11y][Redis Enterprise] Fix aggregations, intervals and fields used in the visualizations of Overview dashboard May 2, 2024
Comment thread packages/redisenterprise/changelog.yml Outdated
# newer versions go on top
- version: "0.10.0"
changes:
- description: Fix intervals in the visualizations of Overview dashboard.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
- description: Fix intervals in the visualizations of Overview dashboard.
- description: Fix intervals in the visualizations of the Overview dashboard.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Since, this is a bug fix, can we change version to 0.9.1 and type bugfix ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Updated, thanks!

@agithomas agithomas left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM!

@elasticmachine

Copy link
Copy Markdown

💚 Build Succeeded

History

cc @harnish-elastic

@elastic-sonarqube

Copy link
Copy Markdown

Quality Gate passed Quality Gate passed

Issues
0 New issues
0 Fixed issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@harnish-crest-data
harnish-crest-data merged commit 9dcc514 into elastic:main May 6, 2024
@elasticmachine

Copy link
Copy Markdown

Package redisenterprise - 0.9.1 containing this change is available at https://epr.elastic.co/search?package=redisenterprise

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request Integration:redisenterprise Redis Enterprise

6 participants