A company runs several applications in the same AWS account. The applications send logs to Amazon CloudWatch. A data analytics team needs to collect performance metrics and custom metrics from the applications. The analytics team needs to transform the metrics data before storing the data in an Amazon S3 bucket. The analytics team must automatically collect any new metrics that are added to the CloudWatch namespace. Which solution will meet these requirements with the LEAST operational overhead?
Select an option, then click Submit answer.
Reference / correct answer:
Configure a CloudWatch metrics stream to include all the metrics and to deliver the metrics to an Amazon Data Firehose delivery stream. Configure the Firehose delivery stream to invoke an AWS Lambda function to transform the data. Configure the delivery stream to send the transformed data to the S3 bucket.
Most accepted answer: B. Configure a CloudWatch metrics stream to include all the metrics and to deliver the metrics to an Amazon Data Firehose delivery stream. Configure the Firehose delivery stream to invoke an AWS Lambda function to transform the data. Configure the delivery stream to send the transformed data to the S3 bucket.
Community votes: A=2, B=4
Selected Answer: A Explanation: The requirements are: 1. Collect performance metrics and custom metrics from CloudWatch. 2. Automatically include new metrics added to the namespace. 3. Transform the metrics data. 4. Store the transformed data in an S3 bucket. 5. Minimize operational overhead. Option A: Configure a CloudWatch metric stream to include metrics from the application and the CloudWatch namespace. Configure the metric stream to deliver the metrics to an Amazon Data Firehose delivery stream. Configure the Firehose delivery stream to invoke an AWS Lambda function to transform the data. Configure the delivery stream to send the transformed data to the S3 bucket. upvoted 7 times
Selected Answer: B Why not option B? Just collect all the metrics in the namespace, if new ones are added later, it will also be collected upvoted 7 times GripZA 1 year, 3 months ago I think his Selected Answer supposed to be A. upvoted 2 times ...
I think his Selected Answer supposed to be A. upvoted 2 times
Selected Answer: B B is the correct answer. Imagine have an application that currently publishes these metrics: app/metrics (RequestCount, ErrorCount). You configure a CloudWatch metric stream (Option A) with a filter: Include only metrics from namespace App/Metrics Day 1: Metrics RequestCount and ErrorCount are captured in the metric stream. ... Day 7: Your development team deploys a new feature that emits metrics in a new namespace: Namespace: App/Cache (CacheHitRate, CacheMissRate) Because your metric stream was explicitly configured to include only App/Metrics, the new App/Cache namespace is not included. With Option B (all metrics): On Day 7, the new App/Cache metrics automatically appear in S3 without you touching anything. ✅ upvoted 2 times
Selected Answer: B CloudWatch metric streams are designed specifically to stream metric data in near real-time to destinations like Firehose. Selecting "all metrics" ensures that any new metrics added in the future are automatically included, satisfying the requirement to "automatically collect any new metrics." Amazon Kinesis Data Firehose supports Lambda transforms, so the analytics team can modify data before it's delivered. Output to S3 is natively supported by Firehose, which satisfies the storage requirement. upvoted 3 times 4eaa7a4 8 months, 2 weeks ago It does say collect any new metrics from the Cloudwatch namespace that is already added (as a whole) in answer A upvoted 1 times ...