Open source Enterprise Grafana Cloud

RSS and status feeds

Visualize RSS feeds, Atom feeds, and status pages as Grafana annotations or table data. This is useful for monitoring service status pages and correlating outages with your metrics.

Before you begin

  • Identify the RSS or Atom feed URL you want to query
  • Most status feeds are publicly accessible and don’t require authentication
  • For private feeds, configure appropriate authentication in the data source settings

Configure the data source

  1. In Grafana, navigate to Connections > Data sources.
  2. Click Add new data source and select Infinity.
  3. In Allowed hosts, add the feed domain (for example, https://status.aws.amazon.com).
  4. Click Save & test.

Query examples

AWS status feed

Use the AWS status RSS feed to display service incidents.

Configuration:

SettingValue
TypeXML
SourceURL
URLhttps://status.aws.amazon.com/rss/all.rss
ParserBackend
Root selectorrss.channel.item

Columns:

SelectorAliasType
titleTitleString
descriptionDescriptionString
pubDatePublishedTimestamp
linkLinkString

GitHub status feed

Configuration:

SettingValue
TypeXML
URLhttps://www.githubstatus.com/history.rss
Root selectorrss.channel.item

Google Cloud status (Atom feed)

Atom feeds have a different structure than RSS feeds.

Configuration:

SettingValue
TypeXML
URLhttps://status.cloud.google.com/en/feed.atom
Root selectorfeed.entry

Columns for Atom feeds:

SelectorAliasType
titleTitleString
updatedUpdatedTimestamp
link.hrefLinkString
contentContentString

Use UQL for advanced parsing

For more control over data transformation, use UQL:

SQL
parse-xml
| scope "rss.channel.item"
| extend "published"=todatetime("pubDate")
| project "title", "published", "description", "link"

Display as annotations

Use RSS feeds to add context to your dashboards by displaying events as annotations.

  1. In your dashboard, click Settings (gear icon).
  2. Navigate to Annotations and click Add annotation query.
  3. Select your Infinity data source.
  4. Configure the query using the settings above.
  5. Map the columns:
    • Time: Use the pubDate or updated column
    • Title: Use the title column
    • Text: Use the description or content column

RSS item structure reference

RSS format:

xml
<item>
  <title>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>http://status.aws.amazon.com/#sns-us-east-1_1642200240</guid>
  <description>Description of the incident...</description>
</item>

Atom format:

xml
<entry>
  <title>Google Cloud Console outage</title>
  <updated>2024-01-15T10:30:00Z</updated>
  <link href="https://status.cloud.google.com/incident/..." />
  <content type="html">Description of the incident...</content>
</entry>

More status feeds

ServiceFeed URLFormat
AWShttps://status.aws.amazon.com/rss/all.rssRSS
GitHubhttps://www.githubstatus.com/history.rssRSS
Google Cloudhttps://status.cloud.google.com/en/feed.atomAtom
Azurehttps://azure.status.microsoft/en-us/status/feed/RSS
Cloudflarehttps://www.cloudflarestatus.com/history.rssRSS
Datadoghttps://status.datadoghq.com/history.rssRSS

Troubleshoot

IssueCauseSolution
Empty responseWrong root selectorUse rss.channel.item for RSS or feed.entry for Atom
CORS errorBrowser request blockedThe Infinity data source makes requests from the server, not browser—check allowed hosts
Date parsing errorInvalid timestamp formatUse UQL with todatetime() to convert non-standard date formats