AWS Metric streams do not work

I cant integrate with AWS via metric streams. Ive setup the iam role step by step, copied the ARN, erverything looks good but on new relic it shows:

We haven’t received any metrics from AWS account XXXXXXX.

On Account status dashboard i dont have any Authentication errors, but on Permission errors i have some errors but they alre from regions i dont have any resources. I only have resources on eu-west-1 and i dont see any errors on this region

Hi a_f_r_castro,

The following troubleshooting steps for AWS Cloudwatch Metric Streams may be helpful.

No metrics or errors appear on New Relic

If you are not seeing data in New Relic once the AWS CloudWatch Metric Stream has been connected to AWS Kinesis Data Firehose, then follow the steps below to troubleshoot your configuration:

  1. Check that the Metric Stream is in a state of Running via the AWS console or API. Please refer to AWS Troubleshooting docs for additional details.
  2. Check the Metric Stream metrics under AWS/CloudWatch/MetricStreams namespace. You will see a count of metric updates and errors per Metric Streams. This will indicate that the Metric Stream is successfully emitting data.
  3. If you see errors, confirm the IAM role specified in the Metric Streams configuration grants the CloudWatch service principal permissions to write to it.
  4. Check the Monitoring tab of the Kinesis Data Firehose in the Kinesis console to see if the Firehose is successfully receiving data.
  5. You can enable CloudWatch error logging on your Kinesis Data Firehose to get more detailed information for debugging issues. Refer to Amazon Kinesis Data Firehose official documentation for more details.
  6. Confirm that you have configured your Kinesis Data Firehose with the correct destination details:
  • Ensure the New Relic API Key/License Key contains your 40 hexadecimal chars license key.
  • Ensure the right data center US or EU has been selected for your New Relic account (hint: if the license_key starts with “eu” then you need to select the EU data center).
  1. Check that your Kinesis Data Firehose has permissions to write to the configured destination, for example: the S3 bucket policy allows write.

For further troubleshooting assistance

If you have checked all the points above and are still having issues then please provide us with screenshots of the following in your AWS account:

  • CloudWatch > Metrics > Streams > [Your Stack for sending metrics to New Relic] > Dashboard >
    • Metric Stream Details
    • Total Errors
    • Click the ‘Edit’ button > Edit the metric stream >
      • Metrics to be streamed
      • Configuration
  • CloudFormation > Stacks > [The stack for sending metrics to New Relic] > (This will only be available if the CloudFormation template was used in setup)
    • Stack info > Overview pane
    • Events pane
    • Resources pane
    • Parameters pane
  • The JSON code for the inline policies related to your MetricStreamRole, and FirehoseRole (if using the S3 backup bucket config)
    • In the Stack Resources pane > click the link for the MetricStreamRole > expand the MetricStreams-FirehosePutRecords policy (or the Firehose-S3Access policy for the FirehoseRole) > click the JSON {} button > screenshot or copy text to file.

Regards

Hi

I thought the only thing need was the instructions on the new relic dashboard.
I just crated the iam and got the ARN. I didnt do anything else.

Do i need to do something else ?
I didn t find any further instrcutions besides the IAM role steps

a_f_r_castro,

The AWS Metrics Streams via CloudWatch integration requires that you set up a Metric Stream for sending data to New Relic on the AWS side. This can be done manually or via CloudFormation template.

Detailed instructions are in the following documentation:
Set up a Metric Stream to send CloudWatch metrics to New Relic


Instead of metric streams you may use the API polling method, which the setup for is documented below:
Connect AWS to New Relic infrastructure monitoring

yeah same here, it wasn’t any further instructions to setup the firehose streams. it was rather mentioned as the first step page as a tiny link which makes no sense to have it at first.

and now the most frustrating thing is to how to setup alert around these AWS metrics, only see hosts, network etc.

now I found out I have to use API to create alerts (silent) non-sense implementation

https://docs.newrelic.com/docs/infrastructure/new-relic-infrastructure/infrastructure-alert-conditions/rest-api-calls-new-relic-infrastructure-alerts/

This is great feedback, we’ll make the last step in the setup “Configure Metric Stream” more prominent in order to highlight that CloudWatch metric stream and Kinesis Data Firehose need to be configured in your AWS account in order to push metrics.

Regarding alerts, as explained in the docs, we recommend NRQL alerts for metric streams which gives more flexibility and controls on the conditions. These can be defined in the UI or via API, see NRQL alerts documentation.