elastic / beats

:tropical_fish: Beats - Lightweight shippers for Elasticsearch & Logstash
https://www.elastic.co/products/beats
Other
12.15k stars 4.91k forks source link

Elastic Agent : UI is Missing about 104 Metrics Namespaces for the AWS Module #30495

Closed joshuaquek closed 1 year ago

joshuaquek commented 2 years ago

Describe the enhancement: At the moment, it seems that we can only configure the following AWS Namespaces for metrics collection in our Elastic AWS Module ( available as manifest.yml files here - https://github.com/elastic/beats/tree/v7.17.0/x-pack/metricbeat/module/aws in each individual sub-folder):

This can be set in the AWS Module UI

However, the following AWS Namespaces are missing:

Would there be any roadmap to support these in the UI?

As of now the workaround solution is to manually build the YAML from https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html and input it inside the Cloudwatch metric dropdown:

image

The issue with this is that one cannot set differing intervals for each manually set namespace & metric entered into this section, but uses a single interval specified under this dropdown.

Describe a specific use case for the enhancement or feature:

To be able to define different intervals for different metric namespaces, like how it is already possible for DynamoDB and EC2 for example.

elasticmachine commented 2 years ago

Pinging @elastic/integrations (Team:Integrations)

kaiyan-sheng commented 2 years ago

cc @ravikesarwani

ravikesarwani commented 2 years ago

Correct, we have certain number of most common out of the box integrations available and based on customer demand will continue to add more over time. As you mentioned the generic AWS CloudWatch integration can be used for other metricset we don't have built in out of the box integrations available right now.

Regarding the issue around differing collection interval, you will need to add multiple integrations with common set of metricest grouped where the same collection internal would suffice the requirements.

joshuaquek commented 2 years ago

Ok got it! Thanks @ravikesarwani

Ok so it seems that now the workaround to this challenge is to set different intervals for different missing namespaces, and then add multiple "AWS Module" integrations to a single policy. After that in each "AWS Module" integration attached to the policy, tick only the Cloudwatch metrics and input the custom YAML for that missing namespace and set the interval.

Would this be correct?

joshuaquek commented 2 years ago

Also, for AWS/ElasticCache namespace, there are two different types of resources, Redis and Memcached.

How can I construct the YAML for this? Since the metrics available for Redis and Memcached are different:

Could we possibly use the resource_type YAML field for this (I am unable to find what the exact string is, if we can use this field)? Since they belong under the same AWS Namespace of AWS/ElasticCache.

botelastic[bot] commented 1 year ago

Hi! We just realized that we haven't looked into this issue in a while. We're sorry!

We're labeling this issue as Stale to make it hit our filters and make sure we get back to it as soon as possible. In the meantime, it'd be extremely helpful if you could take a look at it as well and confirm its relevance. A simple comment with a nice emoji will be enough :+1. Thank you for your contribution!