Skip to content

[AWS][ELB] Split ELB data dashboard into 3 different data dashboard - #10444

Merged
anil-elastic merged 18 commits into
elastic:mainfrom
anil-elastic:integrations-10151
Aug 13, 2024
Merged

anil-elastic merged 18 commits into
elastic:mainfrom
anil-elastic:integrations-10151

Conversation

@anil-elastic

@anil-elastic anil-elastic commented Jul 10, 2024 •

Copy link
Copy Markdown
Contributor

Proposed commit message

Split ELB data dashboard into 3 different data dashboard

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.

Author's Checklist

  • [ ]

How to test this PR locally

Related issues

Fields that are not shown on the dashboard

ALB Metrics

Source Field Description
Consumed LCUs The number of load balancer capacity units (LCU) used by your load balancer
HTTP Code ELB 500 Count The number of HTTP 500 error codes that originate from the load balancer
HTTP Code ELB 502 Count The number of HTTP 502 error codes that originate from the load balancer
HTTP Code ELB 503 Count The number of HTTP 503 error codes that originate from the load balancer
HTTP Code ELB 504 Count The number of HTTP 504 error codes that originate from the load balancer
HTTP Fixed Response Count The number of fixed-response actions that were successful
HTTP Redirect Url Limit Exceeded Count The number of redirect actions that couldn't be completed because the URL in the response location header is larger than 8K
IPv6 Processed Bytes The total number of bytes processed by the load balancer over IPv6
IPv6 Request Count The number of IPv6 requests received by the load balancer
Processed Bytes The total number of bytes processed by the load balancer over IPv4 and IPv6
Rejected Connection Count The number of connections that were rejected because the load balancer had reached its maximum number of connections
Rule Evaluations The number of rules processed by the load balancer given a request rate averaged over an hour

NLB Metrics

Source Field Description
Active Flow Count TLS The total number of concurrent TLS flows (or connections) from clients to targets
Consumed LCUs The number of load balancer capacity units (LCU) used by your load balancer
New FlowCount TLS The total number of new TLS flows (or connections) established from clients to targets in the time period
Processed Bytes The total number of bytes processed by the load balancer, including TCP/IP headers
Processed Bytes TLS The total number of bytes processed by TLS listeners
TCP Client Reset Count The total number of reset (RST) packets sent from a client to a target
TCP ELB Reset Count The total number of reset (RST) packets generated by the load balancer
TCP Target Reset Count The total number of reset (RST) packets sent from a target to a client

ELB Metrics

Source Field Description
Active Flow Count TLS The total number of concurrent TLS flows (or connections) from clients to targets
Consumed LCUs The number of load balancer capacity units (LCU) used by your load balancer
New Flow Count TLS The total number of new TLS flows (or connections) established from clients to targets in the time period
Processed Bytes The total number of bytes processed by the load balancer, including TCP/IP headers
Processed Bytes TLS The total number of bytes processed by TLS listeners
TCP Client Reset Count The total number of reset (RST) packets sent from a client to a target
TCP ELB Reset Count The total number of reset (RST) packets generated by the load balancer
TCP Target Reset Count The total number of reset (RST) packets sent from a target to a client

Screenshots

ELB

image

ALB

ALB

NLB

NLB

Updated snapshot

ALB

metricbeat-aws-alb-overview

ELB

metricbeat-aws-elb-overview

NLB

metricbeat-aws-nlb-overview

Existing ELB metric dashboard

deprecated  metricbeat-aws-elb-overview

AWS-Load-Balancer-Overview

AWS-Load-Balancer-Overview

@anil-elastic
anil-elastic requested review from a team as code owners July 10, 2024 11:00
@anil-elastic
anil-elastic requested a review from agithomas July 10, 2024 11:04
@agithomas
agithomas requested a review from a user July 10, 2024 11:34
@anil-elastic

Copy link
Copy Markdown
Contributor Author

/test

@ghost ghost left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

After looking into how to properly display the data across dashboards, I believe we can utilize the aws.cloudwatch.namespace field.

We can add a filter in each dashboard (similar to data_stream.dataset filter) to ensure aws.cloudwatch.namespace corresponds to each specific load balancer type:

  • AWS/NetworkELB namespace for the NLB dashboard
  • AWS/ApplicationELB namespace for the ALB dashboard
  • AWS/ELB namespace for the ELB (classic load balancer) dashboard

We also need to use different breakdown fields for lenses based on the load balancer type:

  • AWS/NetworkELB and AWS/ApplicationELB: breakdown by aws.dimensions.LoadBalancer
  • AWS/ELB: breakdown by aws.dimensions.LoadBalancerName

@agithomas WDYT about this approach?

Comment thread packages/aws/changelog.yml Resolved
@elasticmachine

elasticmachine commented Jul 10, 2024 •

Copy link
Copy Markdown

🚀 Benchmarks report

To see the full report comment with /test benchmark fullreport

@ghost ghost assigned anil-elastic Jul 10, 2024
Co-authored-by: Gabriel Pop <94497545+gpop63@users.noreply.github.com>
@agithomas

Copy link
Copy Markdown
Contributor

@agithomas WDYT about this approach?

I think it is a good approach, especially from the performance front.

@agithomas

Copy link
Copy Markdown
Contributor

Anil, below is my quick feedback looking at the attached screenshots

  1. Please fix the duplicate metric panel title such as Healthy Host Count
  2. Kindly update the package screenshots as part of this PR
  3. Please keep related panels closer. For example, Keep Connection count & New connection count together.
  4. There exist panel with duplicate title (Request count). Please see the screenshot attached first.
  5. Try to avoid usage of count in the panel title, instead make use of Y-axis labels.
  6. You can always rename the control drop. Please refer to control dropdown named cloud.region
  7. Please fix the label 3xx_count_sum

@agithomas

Copy link
Copy Markdown
Contributor

@anil-elastic / @gpop63 ,

I think it is important to have an input control to use the values of aws.dimensions.LoadBalancerName such that the user can select from multiple Loadbalancers of the same type (ALB / ELB / NLB).

WDYT?

@agithomas agithomas changed the title Split ELB data dashboard into 3 different data dashboard [AWS][ELB] Split ELB data dashboard into 3 different data dashboard Jul 11, 2024
@agithomas
agithomas requested a review from ali786XI July 11, 2024 07:48
@ali786XI

Copy link
Copy Markdown
Contributor

@anil-elastic Please have a look at these review comments

  1. For Healthy/Unhealthy host count it's showing decimal values. Can we remove them to show it as an integer?
  2. For Http 3xx count check the X-axis label. It's @timestamp per minute whereas rest all are 5 minutes. Generally the convention is to keep horizontal axis timestamp interval to Auto. Also please check y axis label it is showing /s.
  3. Related to point 1, a general comment for all visualizations. It's not always necessary to show metrics as double values if they are coming as integer. Like for example you can remove decimals for 3xx count, 4xx count visualizations. Please check for similar if the decimals are really required.
  4. (Minor) It would be great to update the screenshot of ELB as it is distorted.

@anil-elastic

Copy link
Copy Markdown
Contributor Author

@agithomas @aliabbas-elastic I just pushed the changes and updated the snapshot also. Please review.

@anil-elastic

Copy link
Copy Markdown
Contributor Author

/test

@elasticmachine

elasticmachine commented Jul 24, 2024 •

Copy link
Copy Markdown

💔 Build Failed

Failed CI Steps

History

cc @anil-elastic

@mbondyra mbondyra left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Visualizations LGTM 👌🏼

@ali786XI ali786XI 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.

I didn't just check in the Updated for the visualizations screenshots :) Thanks for addressing all the comments!

@efd6 efd6 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.

Purely due to codeowners.

@anil-elastic

Copy link
Copy Markdown
Contributor Author

Updated the existing ELB metrics dashboard with links of new LB's dashboard. Snapshot attached.

@agithomas

Copy link
Copy Markdown
Contributor

@anil-elastic , can you revisit the content for `Network Load Balancer (NLB) in the modified (existing) overview dashboard ?

@agithomas

Copy link
Copy Markdown
Contributor

Please update the screenshot of the existing ELB overview dashboard to reflect the new layout.

@ghost

ghost commented Aug 1, 2024

Copy link
Copy Markdown

Overall, it looks good to me. A few nitpicks:

  • If we use a static color in the overview dashboard, the background colors of the lenses won't change dynamically based on the Kibana color theme.
  • For some lenses, we have Y-axis labels, while for others we don't. The current labels seem ok.
  • Since the old dashboard has become an overview dashboard with navigation, can we rename it to something like [Metrics AWS] Load Balancers Overview? There are many dashboards where we do this, and it would avoid having to deprecate it?

@agithomas

@anil-elastic

Copy link
Copy Markdown
Contributor Author

@agithomas Updated as per the review comments. Please review once.

Comment thread packages/aws/manifest.yml Resolved
@elasticmachine

Copy link
Copy Markdown

💚 Build Succeeded

History

cc @anil-elastic

@elastic-sonarqube

Copy link
Copy Markdown

@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

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

@anil-elastic
anil-elastic deleted the integrations-10151 branch August 22, 2024 05:23
harnish-crest-data pushed a commit to chavdaharnish/integrations that referenced this pull request Feb 4, 2025
…lastic#10444)

* split ELB data dashboard into 3 different dashboard

* Update packages/aws/changelog.yml

Co-authored-by: Gabriel Pop <94497545+gpop63@users.noreply.github.com>

* Review comment fixed

* ALB snapshot updated

* fomatting fixed

* Updated existing ELB dashboard

* Updated with deprecrated and New dashboard link

* dashboard size and text updated

* version updated

* file name corrected

* dashboard word removed from link and NLB description updated.

* snapshot updated

* removed deprecated elb dashboard screenshot

---------

Co-authored-by: Gabriel Pop <94497545+gpop63@users.noreply.github.com>
harnish-crest-data pushed a commit to chavdaharnish/integrations that referenced this pull request Feb 5, 2025
…lastic#10444)

* split ELB data dashboard into 3 different dashboard

* Update packages/aws/changelog.yml

Co-authored-by: Gabriel Pop <94497545+gpop63@users.noreply.github.com>

* Review comment fixed

* ALB snapshot updated

* fomatting fixed

* Updated existing ELB dashboard

* Updated with deprecrated and New dashboard link

* dashboard size and text updated

* version updated

* file name corrected

* dashboard word removed from link and NLB description updated.

* snapshot updated

* removed deprecated elb dashboard screenshot

---------

Co-authored-by: Gabriel Pop <94497545+gpop63@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[AWS][ELB] Create a dashboard panel for TargetResponseTime metrics [AWS] Splitting AWS ELB integration into 3 separate data streams

7 participants