Visualizing data from AWS Status feeds
In this example, you use AWS status feeds as Grafana annotations. This can be useful when you are dealing with any AWS outages. For this, you’re going to use the AWS RSS feed. You can find more feeds at AWS Status page
Connection setup
AWS status feeds are open and no authentication is required, so you can simply create a data source using Infinity without any additional configuration.
Annotation setup
After you’ve created an annotation in your dashboard, follow the steps below:
- Create a annotation and select your Infinity data source.
- Select XML as query type, URL as source and Format Data Frame.
- Provide
https://status.aws.amazon.com/rss/all.rss
as the URL. - You need to specify
rss.channel[0].item
as the URL. You can find this path from the original RSS feed. - Create
title
,description
as columns and provide the string type. - Create
pubDate
column and mark this as ‘DateTime’. - Select
guid[0]._
as string. This is your link, so you can alias it as “link”.
The following XML is a reference feed item:
<item>
<title><![CDATA[Service is operating normally: [RESOLVED] SMS Delivery Delays]]></title>
<link>http://status.aws.amazon.com/</link>
<pubDate>Fri, 14 Jan 2022 14:44:00 PST</pubDate>
<guid isPermaLink="false">http://status.aws.amazon.com/#sns-us-east-1_1642200240</guid>
<description><![CDATA[Between 5:14 AM and 11:38 AM PST, we experienced increased delivery latency while delivering SMS messages using US toll-free numbers. Also starting at 5:14 AM, SMS message delivery receipts were delayed, which created a backlog of undelivered delivery receipts. We are continuing to work with our downstream partners to clear this backlog. Receipts for new SMS deliveries will also be delayed until this backlog clears. The issues have been resolved and the service is operating normally.]]></description>
</item>
Table view of status items
You can follow the same query procedure in your table panel to get the results as Table:
Alternate query method
If you are familiar with UQL query, you can achieve this with a simple query. Instead of selecting “XML” as your query type, you will choose “UQL” in this method and write the following UQL query.
parse-xml
| scope "rss.channel.item"
| extend "published date"=todatetime("pubDate")
| project "title", "published date", "description", "link"
More status feeds
With this approach, you can monitor not only AWS status feeds but also any RSS feeds.