Create a gist now

Instantly share code, notes, and snippets.

AWS Status Page with fewer requests.

While waiting for the Amazon AWS Status page to report on the actual status of S3 (US-EAST-1) I saw this tweet (https://twitter.com/awscloud/status/836656664635846656)

The dashboard not changing color is related to S3 issue. See the banner at the top of the dashboard for updates.

After seeing this I started working out a way to generate the page from Gulp with as few HTTP requests as possible and thus as few depeancies as possible. This is that attempt (with some guessees as to their schema for status information). I also took the opporunity to fix some invalid HTML on thier site while retianing as close as possible the look and feel of their original site (though with this approach updating the look would likly be easier).

{
"services": {
"apigateway-us-west-1": {
"status": 0,
"message": "Service is operating normally"
},
"apigateway-us-east-1": {
"status": 1,
"message": "[RESOLVED] Increased Error Rates",
"notes": [
{
"recorded": "11:56 AM PST",
"message": "We have confirmed increased error rates for API Gateway requests in the US-EAST-1 Region when communicating with other AWS services. Deploying new APIs or modifications to existing APIs are also affected.</div><div><span class="yellowfg"> 2:19 PM PST</span>&nbsp;Between 9:37 AM and 1:57 PM PST we experienced elevated error rates for API Gateway requests in the US-EAST-1 Region when communicating with other AWS services. Deploying new APIs or modifications to existing APIs was also affected. The issue has been resolved and the service is operating normally."
}
]
}
}
}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="CACHE-CONTROL" content="NO-CACHE">
<title>AWS Service Health Dashboard - Feb 28, 2017 PST</title>
<link rel="icon" type="image/ico" href="/favicon.ico" />
<style type="text/css"><% include("build/style.css") %></style>
<script type="text/javascript"><% include("build/script.js") %></script>
<script type="text/javascript" src="//d36cz9buwru1tt.cloudfront.net/amznUrchin.js"></script>
</head>
<body style="text-align: center" class="yui-skin-sam" onload="eventData.fetch()">
<div style="text-align: left" class="container">
<div class="logo">
<img src="data:image/gif;base64,R0lGODdhpQE8AOYAAAAAABoXFyglJTY0ND07O0VCQktJSVNRUbpRIbxXKb1ZLL9eMWFfX8BfNMFhNsJlO8NoPsVsRHBubsZvSMZwSchzTcl2Ucp6VX58fMx+Ws2BXs+FZP2GCdCIZ4yKitGLa/2NF/2OGtKPcNOSdNWWev2WKpqZmdaZfNmeg9mghtuljP2mSqinp96slf2uW9+vmd+wmv2wX+CxnLe2tuK2o+O5pua+rf2+e+bAr+fCssXExOjFtv7GjOnHuP7IkerLvezOwezSxdPT0+7Wy/7WrO/Yzv7YsPDZz/Hc0v7evfLg1+Lh4f7hwvTj3PXm4Pfq5fft6Pju6v7u3vDw8P317fz28vz49v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAAFgAIf8LSUNDUkdCRzEwMTL/AAAHqGFwcGwCIAAAbW50clJHQiBYWVogB9kAAgAZAAsAGgALYWNzcEFQUEwAAAAAYXBwbAAAAAAAAAAAAAAAAAAAAAAAAPbWAAEAAAAA0y1hcHBsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALZGVzYwAAAQgAAABvZHNjbQAAAXgAAAVsY3BydAAABuQAAAA4d3RwdAAABxwAAAAUclhZWgAABzAAAAAUZ1hZWgAAB0QAAAAUYlhZWgAAB1gAAAAUclRSQwAAB2wAAAAOY2hhZAAAB3wAAAAsYlRSQwAAB2wAAAAOZ1RS/0MAAAdsAAAADmRlc2MAAAAAAAAAFEdlbmVyaWMgUkdCIFByb2ZpbGUAAAAAAAAAAAAAABRHZW5lcmljIFJHQiBQcm9maWxlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABtbHVjAAAAAAAAAB4AAAAMc2tTSwAAACgAAAF4aHJIUgAAACgAAAGgY2FFUwAAACQAAAHIcHRCUgAAACYAAAHsdWtVQQAAACoAAAISZnJGVQAAACgAAAI8emhUVwAAABYAAAJkaXRJVAAAACgAAAJ6bmJOTwAAACYAAAKia29LUgAAABYAAP8CyGNzQ1oAAAAiAAAC3mhlSUwAAAAeAAADAGRlREUAAAAsAAADHmh1SFUAAAAoAAADSnN2U0UAAAAmAAAConpoQ04AAAAWAAADcmphSlAAAAAaAAADiHJvUk8AAAAkAAADomVsR1IAAAAiAAADxnB0UE8AAAAmAAAD6G5sTkwAAAAoAAAEDmVzRVMAAAAmAAAD6HRoVEgAAAAkAAAENnRyVFIAAAAiAAAEWmZpRkkAAAAoAAAEfHBsUEwAAAAsAAAEpHJ1UlUAAAAiAAAE0GFyRUcAAAAmAAAE8mVuVVMAAAAmAAAFGGRhREsAAAAuAAAFPgBWAWEAZQBvAGIAZQD/YwBuAP0AIABSAEcAQgAgAHAAcgBvAGYAaQBsAEcAZQBuAGUAcgBpAQ0AawBpACAAUgBHAEIAIABwAHIAbwBmAGkAbABQAGUAcgBmAGkAbAAgAFIARwBCACAAZwBlAG4A6AByAGkAYwBQAGUAcgBmAGkAbAAgAFIARwBCACAARwBlAG4A6QByAGkAYwBvBBcEMAQzBDAEOwRMBD0EOAQ5ACAEPwRABD4ERAQwBDkEOwAgAFIARwBCAFAAcgBvAGYAaQBsACAAZwDpAG4A6QByAGkAcQB1AGUAIABSAFYAQpAadSgAIABSAEcAQgAggnJfaWPPj/AAUAByAG8AZgBp/wBsAG8AIABSAEcAQgAgAGcAZQBuAGUAcgBpAGMAbwBHAGUAbgBlAHIAaQBzAGsAIABSAEcAQgAtAHAAcgBvAGYAaQBsx3y8GAAgAFIARwBCACDVBLhc0wzHfABPAGIAZQBjAG4A/QAgAFIARwBCACAAcAByAG8AZgBpAGwF5AXoBdUF5AXZBdwAIABSAEcAQgAgBdsF3AXcBdkAQQBsAGwAZwBlAG0AZQBpAG4AZQBzACAAUgBHAEIALQBQAHIAbwBmAGkAbADBAGwAdABhAGwA4QBuAG8AcwAgAFIARwBCACAAcAByAG8AZgBpAGxmbpAaACAAUgBHAEIAIGPPj//wZYdO9k4AgiwAIABSAEcAQgAgMNcw7TDVMKEwpDDrAFAAcgBvAGYAaQBsACAAUgBHAEIAIABnAGUAbgBlAHIAaQBjA5MDtQO9A7kDugPMACADwAPBA78DxgOvA7sAIABSAEcAQgBQAGUAcgBmAGkAbAAgAFIARwBCACAAZwBlAG4A6QByAGkAYwBvAEEAbABnAGUAbQBlAGUAbgAgAFIARwBCAC0AcAByAG8AZgBpAGUAbA5CDhsOIw5EDh8OJQ5MACAAUgBHAEIAIA4XDjEOSA4nDkQOGwBHAGUAbgBlAGwAIABSAEcAQgAgAFAAcgBvAGYAaQBsAGkAWQBsAGX/AGkAbgBlAG4AIABSAEcAQgAtAHAAcgBvAGYAaQBpAGwAaQBVAG4AaQB3AGUAcgBzAGEAbABuAHkAIABwAHIAbwBmAGkAbAAgAFIARwBCBB4EMQRJBDgEOQAgBD8EQAQ+BEQEOAQ7BEwAIABSAEcAQgZFBkQGQQAgBioGOQYxBkoGQQAgAFIARwBCACAGJwZEBjkGJwZFAEcAZQBuAGUAcgBpAGMAIABSAEcAQgAgAFAAcgBvAGYAaQBsAGUARwBlAG4AZQByAGUAbAAgAFIARwBCAC0AYgBlAHMAawByAGkAdgBlAGwAcwBldGV4dAAAAABDb3B5cmlnaHQgMjAwrzcgQXBwbGUgSW5jLiwgYWxsIHJpZ2h0cyByZXNlcnZlZC4AWFlaIAAAAAAAAPNSAAEAAAABFs9YWVogAAAAAAAAdE0AAD3uAAAD0FhZWiAAAAAAAABadQAArHMAABc0WFlaIAAAAAAAACgaAAAVnwAAuDZjdXJ2AAAAAAAAAAEBzQAAc2YzMgAAAAAAAQxCAAAF3v//8yYAAAeSAAD9kf//+6L///2jAAAD3AAAwGwALAAAAAClATwAAAf/gFeCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydmkw3JSU3TJCgoqSeqqusra6vsLGys4RVRDEhHLq7ITFGVYi2uLu8vsC0yMnKy8zNzppSPCvE1LsrPlKE0dPV1NfZz+Hi4+Tl5pJURC651CEuRMeG6evV7vDn+Pn6+/yqo0mEkoT6FzCUIIKDBKICmNBgv4cQI0rMx+tdvEG26OkSVPFeoYzsOEwcSbKkyVbdVvAQJK0bx2oqWXKjdrKmzZs4E3XbeGWnyJ47X7rMSbSoUYg+hVZTShPo0KNQo0ptltTpUqtNq07dyrWrqqpgg2Il5rWs2bORwg5VexWt27dv/9lmFasVrt27U+WSHbuL6V68gAPn1NuXL8+6ghMrlkj4MF2xiyNL1rftKkwe4CrPJaYS3OTPoMnNA+EYxDsqiEaXPh26tWtKp0aVehQ7VUFBNxg6Eohb9+vfwIPdClnsl/Bh7YwFX868k2afHL5pawk9Orbm2LNTmkdcl72LhLjXs6i9vHlFCAUpTH9F4cHcBRfGR8SCgYAA+A9gWFJogH//grBwwIAS8BfggAcUSJ99+AWgn4GENCjhhAEUMkV9AzLAwhSG/DcAAQcSCOF5JC7SEXhXgFTYiYaoyBMhQgxAIX4CsBChhFcwMKEAQkxRAIU2wijjjDUWMiOFhOgwpP+EA+hgJI4/ThhkiVQektJKV1C3GWdYavmXIELcdyR+Tgoy4QEzJkgkhGGOSeaNblYoiA5ulmmmhGhSKMCIVfbZ2E9/FpJngwWI2SADg8SpqAmDDIpfoRMimmicBwgyhaFEcnjnon126teKj60F2RVCMCmEIBJIKMCkZy4pYQGuBiABmKaiqiohHuSqK6YBlOnBq0ssESV+HrD6aqyzeupnqJYx29ScEk45xYTG4nfqFY4GEKSODVZ6BZ0NSkstIjNMiMEgrpYJLn4DVFtkjngqu6yo9Db7lCBL6DCDCZpuil+1BQzCwquDrOvgIPnu2+8V4xqyBKYFaFpqg6sOgun/teYWHK+8VAZqGKCjWqiDCR6kiqO/AZwLbbcas2zIFCOX3LCgE157xcAuC+JokBPaabC3HJPosceFmDDsjNUWuzKxLedX9NFIGmLChEoL8mvO2EqodM9NHxy00M7uRbSlUCONctUGo73xFT4qasjEWF9xtdONao2yz2t/Xd7QYRc2yNECSMCCwXIybPfSAaidM+CCE24I4HzO7bXOh3ONONB6a8d3vc9eMTXFNjdMddeK0/05jaGfPIjkAcxgiOSYO7q1hHjHnXlzz4HKZWZeOrY7IY4yWm3SpHftbfBw/tt1AJIWUi6hhBztuuEN1k737eapBrJpRKB2iPYvce99/yGYWo+fpqMjXrrX5S+v6RSxdrsfvhO+P6GBln+bN/bn8XYFfISozWwa0ptFTEh4WYvW2Yp3OZQhMFtBMoCiknU04Z0uAAG7m/H4xzFhdIcDvTBOJBwlgBnogFuq4k/69Neg9R1PVSZEIcVUqCg54YxGLGABpqaUv59x0FO524l0HoGBGuKHUStM2wavUEQjIrGGdRsT5nq4vx9SSTztIE8kLnUkExgqWUk8HAvpxsUZebFBYKSRBDygAx2wwAODGkTbZhSx5PVqiVYsEXvWA0D1OMQRMZrQAFzXpqqFsYVda14gmUTI+1TNAAyY3ss80Dy2yRA/DFgY9ayVyDx2zP87WqyFOkIiCR3oyk5XWILNPGHKXKFSlZhYAsk8YAI+efKHV5LJvbyyylv6khBjewWaULmMqSHwl8gMpiuG+QxjIvOZH/vUi2DBzGcQExlVeMIztPmbbLKiClAwhzJbwUxYniUHD0AAAhTwgXhkQJ3wVCcKBPHOeEbgA1Gg5wMMoQQE4OAKKkAAIWRwAXiOwJ3xhOc8C6GBChQiCAgIAj0TKs9CUAABSChEBDZgiBFQVJ0wuEJDHxpRQxQUng7YQEYNcdGVEgKd6mRnPEZKCIhK9AoRsCcJwFMDCKgTAiRoAksxWoh6wvOe+RTESdWZUpc+YpyIEIAANPUwoD1MUiz/GNIAqoamGURJAMdcnVY9sDAPDKkAkpQABqagIxPQaU/AC4AQnMk2kwmganUVEwNsJgQUFuCaiMgBAkSQgyGowAERGEQGIGCDxjp2pRmIABAmu4MTKGCfV7ABAoZQCBUowAoAFaggAkqCHxzBsyNQLGMd21inCoKmg7ApPVfLWqc2AQETIIFGOVqIITjWARZwrFBhKwjZFuICEWhsDVSQzpsO4ra5LYRgCWtYxA6CuFcwbgQo0FgaqCABFyDEBxBwgiAg4QUReEBSBQFd3RIispMFQmUvOwjkKpe5JYUEVA/xoyDhzEADY1QT1XoflaFJqhgwWViLGDgJ3AdoB04w/36m96gjXuE+U1pCANr1q2K1bQAHuI+kuLjVA/PnYRj0QJQAa4gNTIAQmr1pBiyQiBkXQgabTVECFjqIB6Q2tIKoAQJkQAgaIAAI9KQxI7BrXBsrIgUUoMFnCbFRRdyToQ6taX4JcYHwDiIKFHjARaAsZdAOwsUwzi+T81vlQRiZmz1AgA0I8QQHvHgQZJ6yYpU8CBxz9gpdJgSYxazfvk1zEUVMlsm2JVcNyxVM9znVga81tYpN6lpt4s/AphqgAFQMjZpKVfOmdq4Oyw2DHILfHVMFNFF7bnK/StYiNgAB6TohyTXmc3GPLAgROIAQQ8gxkEWqa0HIALLFRsSaZf+c7EI4QAVRkDOVeYuIKxNi2Sb18iCCvQNCPDvacz5zrV96a5FmObZspvYVdoAAbk7g3IOI85+v8G1p75mkSAa0tgXB7UJz7kuLoFO7rjAkSUn1CqmSNRMTlzWVCeI+qMQPhIIliP5G746YJMTzNPWjU5laRpKcGlklLsfz/aqSLDaEYCtAA26+t9m4xogGFoBu55Jg3MNeAI8P4eRFaCACTQh60GMcc0QAAQFCzcC+21ztDzAU6EJvAtGPu29BIKAFgzh60ve98pYb4udRl3q6BVGFI1BAA4NAQAoMEW0iX0HrV1D6y2sx8/pW/QpX97e92tKISGv4wPqbFZoOoCv/OB6smpTDq4wC59YbrVFXMirWmwiBYbZt2GqJm1bh5gQzYhWeTOAqgAdmYEtF2GAB6oyAChBKUW5mQAEWiH1O7S2IB7j3CgrA+mgF+gQE0EARRo2ny6/70fwGH54u/8CdNStUQTD9ENYm/keda3dDOMDpglC+IJgPY9QjQPUzLf5NZw/PBhzjtr83xAJ+rP3MIl2xsJe9OsOtb+tj3xFBBNnvHtFWYw6ziDYyJoiCeFmDV4tEI8VCOBLyRIZQRIgyMCrTYeByCBdUMwv3Kr20CEGAAjlFAa73ADIQgiJ4DBmwfiNQUBswfABFc1fwA+02CAF1BVSQdzUGgiIYgijy/3M/sIM72ALGZ4M3eAxVkAC6VwUIwGPPZwjR91oRwIM9uGXVVwgK8GNDWIRHaAgb2IHcpINO6IPjRwE1UAMygAKIpU1OgAA1cAgNkFpVSHZXSE8miILDF2hS+GORAD5AIT6TMDAMoCOylDI/wh8ywmIEiCZ4NSeUJCYs4GiJoDwwcj46ci0S6Igah0GKsAQsgAF5MnCRwG4qUHSG0HM+mH7PxWsfkAGEEIP0ZoeD4HI9pwjYFncw534JxYI4pW5KeH+vBW/ZBYVKVXUz+Im0GE+2aAieuIskNX7qFm3CuADCWAtoOIzwZIui6HtcBowI8IyU4D99RAmOJgDtUioykv9BhlgIBlKO6HJHiaAjiDJ5loI+m5eOU8OJpkZygjADBzA4lJhKiDAxKScITqAAP8BQXvaKRaVrGkBUhFABB0V7w/ZzH7EAqCiLjRCLBvleEZADGpkDAdVtt2hlumhuyZhthcBuAxl3GbmRHXkFAXmS1+VlsZiEFOBlG5BYhaBZGRVZG8mRCOCRr5iQLkWHg2CS5BAlyTIkKjOP/dJWWTMAmvJW/VIulfQrlcKOciQjp7KPgsBgKbM6DIeOWWMj94FApbIqOoJKg8gID4B2hPAAJwCKB0lnCXBnbrYAOaAAF6GKLqiNowiXysaLTQZzved2g7AAbJmEGhWSsXiNtZD/XoIwmIVgmLXHlj32liKpZcoYHgnwY0f3AoL2ADQGmYQgmRTZinMZhWTnmOTQREFiMtOjamh1Qp7GH3mCVjrEcAgjYiZ0mzYyMQygLz+SQVpJKg0iSaYGLm6lI5z2OWx0m6XmaWwkm5amCEJmATQQBDZgAQoAWQ8Qht5ZAz5ZbD5ImDL4faw4bFeAAghQWj8wXtqWAd35neD5dYD5g/I5nz6ogifwgtsln8O3hJdZcyYVAWE4hg7Aa1eQn4Wwn9pUndeZnduJjJjpfGAYhi2QUy5lZCMABEhQA4iFGgpKCAxamoMwnkpFoGJIhgg6DuBiIM8jJKpyLQegIRKicJA20CGydpuEAo+IsHi4gpsXxCOD0ERoNKQ7koGIsAPkVwEudXzqRAF+GQEKEE6D0AG+qIqjZQHwdALj46QIAKVYNpJx91FQGgF3dwTZiFMU5ZHOp5j1SX1KFU8P8AFFMAhmaghoKoxKCk9Mel1v6nzx5AAZAKc1kJAI4GPcdKeFkKckaqdTCmhySqfnYAIINAWjZwgzkCsz0C9LwCGYyAJIeo+5UksW8kaXOgiUSi6nCiYeYDOy5AEbYo6z1EuvOnqa1AjNxwxVkKuvwaueoIKyEAgAOw==" />
</div>
<hr style="border: 0; background-color: #eeeeee; border-top: 3px solid #117711; height: 16px;" />
<div style="margin: 8px 0 0 0"><a href="http://aws.amazon.com/">Amazon Web Services</a> &nbsp;&raquo;&nbsp; Service Health Dashboard</div>
<p class="notice">Get a personalized view of AWS service health</p>
<a href="https://phd.aws.amazon.com" class="awsbutton">Open the Personal Health Dashboard</a>
<h3 style="font-size: 13.5pt;">Current Status<span style="font-size: 12px"> - Feb 28, 2017 PST</span></h3>
<p>
Amazon Web Services publishes our most up-to-the-minute information on
service availability in the table below. Check back here any time to get
current status information, or subscribe to an RSS feed to be notified
of interruptions to each individual service. If you are experiencing a
real-time, operational issue with one of our services that is not
described below, please inform us by clicking on the
&quot;Contact Us&quot; link to submit a service issue report. All dates
and times are Pacific Time (PST/PDT).
</p>
<div class="pad8 bordered gradient">
<div id="current_events_block" class="yui-navset">
<div style="position: absolute; top: 8px; right: 8px;">
<a href="http://aws.amazon.com/contact-us/" style="text-decoration: none;">Contact Us</a>
</div>
<ul class="yui-nav">
<% Object.keys(services.regions).forEach((locale, index) => { %>
<li id="<%=locale%>_block_tab" class="tabStandard <% index === 0 ? 'selected' : '') %>">
<div><a href="#<%=locale%>_block"><%=services.regions[locale].label%></a></div>
</li>
<% }) %>
</ul>
<div class="yui-content">
<% Object.keys(services.regions).forEach((locale) => { %>
<div id="<%=locale%>_block" class="pad8 whitebg bordered">
<table class="fullWidth" style="border-spacing: 0; margin-bottom: 8px;" cellspacing="0">
<thead>
<tr>
<th class="left gradient" style="width: 400px;" colspan="2">Recent Events</th>
<th class="left gradient" style="width: 316px; padding-left: 8px">Details</th>
<th class="center gradient" style="width: 48px;">RSS</th>
</tr>
</thead>
<tbody>
<% errors(data, locale, (service) => { %>
<tr>
<td class="bb pad04 top center" style="width: 32px">
<img src="/images/status<%=service.status%>.gif">
</td>
<td class="bb pad8 top"><%=service.label%> <%= service.region_label %></td>
<td class="bb pad8">
<div class="floatLeft"><%=service.message%></div>
&nbsp;&nbsp;&nbsp;&nbsp;
<a href="#" onclick="toggleCurrent(this, '<%=service.guid%>_<%=service.lastUpdated%>_<%=locale%>');return(false);">less <img src="/images/less.gif"></a>
<div class="clear"></div>
<div id="<%=service.guid%>_<%=service.lastUpdated%>_<%=locale%>" style="margin-top: 8px;" class="yellowbg bordered-dark pad8">
<% service.notes.forEach((note) => { %>
<div>
<span class="yellowfg"><%=note.recorded%></span>
&nbsp;
<%=note.message%>
</div>
<% }) %>
</div>
</td>
<td class="bb center top">
<a href="/rss/<%=service.guid%>.rss">
<img style="margin-top: 8px" src="/images/feed-icon-14x14.png">
</a>
</td>
</tr>
<% }) %>
</tbody>
</table>
<table class="fullWidth" style="border-spacing: 0; margin-bottom: 8px;" cellspacing="0">
<thead>
<tr>
<th class="left gradient" style="width: 400px;" colspan="2">Remaining Services</th>
<th class="left gradient" style="width: 316px; padding-left: 8px">Details</th>
<th class="center gradient" style="width: 48px;">RSS</th>
</tr>
</thead>
<tbody>
<% stable(data, locale, (service) => { %>
<tr>
<td class="bb top pad04 center" style="width: 32px"><img src="/images/status0.gif" /></td>
<td class="bb top pad8"><%=service.label%> <%= service.region_label %></td>
<td class="bb pad8">Service is operating normally</td>
<td class="bb center top">
<a href="/rss/<%=service.guid%>.rss">
<img style="margin-top: 8px" src="/images/feed-icon-14x14.png" />
</a>
</td>
</tr>
<% }) %>
</tbody>
</table>
</div>
<% }) %>
</div>
</div>
</div>
<br />
<br />
<div style="text-align: center">
<div class="pad8 bordered" style="text-align: left; width: 85%; margin: auto;">
<table style="width: 100%">
<tr>
<td style="width: 24px"><img src="/images/status0.gif" /></td>
<td>Service is operating normally</td>
<td style="width: 24px"><img src="/images/status2.gif" /></td>
<td>Performance issues</td>
<td style="width: 24px"><img src="/images/status3.gif" /></td>
<td>Service disruption</td>
<td style="width: 24px"><img src="/images/info.gif" /></td>
<td>Informational message</td>
</tr>
</table>
</div>
</div>
<h3 style="margin-top: 30px; font-size: 13.5pt;">Status History</h3>
<p>
Amazon Web Services keeps a running log of all service interruptions
that we publish in the table below for the past year. Mouse over any of
the status icons below to see a detailed incident report (click on the
icon to persist the popup). Click on the arrow buttons at the top of the
table to move forward and backwards through the calendar. All dates and
times are Pacific Time (PST/PDT).
</p>
<div id="archived_events_block" class="yui-navset">
<ul class="yui-nav">
<% Object.keys(services.regions).forEach((locale, index) => { %>
<li id="<%=locale%>_archive_block_tab" class="tabStandard <% index === 0 ? 'selected' : '') %>">
<div><a href="#<%=locale%>_archive_block"><%=services.regions[locale].label%></a></div>
</li>
<% }) %>
</ul>
<div class="yui-content">
<% Object.keys(services.regions).forEach((locale, index) => { %>
<div id="<%=locale%>_archive_block" class="pad8 bordered gradient">
<table class="fullWidth" style="border-spacing: 0" cellspacing="0">
<tr>
<td style="vertical-align: top; padding: 0; margin: 0;">
<table id="<%=locale%>statusHistoryContentLeft" class="statusHistory statusHistoryContentLeft" cellspacing="0">
<tr>
<th style="width: 100%; border: 0; border-bottom: 1px solid #cccccc; background-color: transparent; background-image: none;"></th>
<th style="width: 32px; text-align: center;">
<div style="width: 32px">
<a href="#" onclick="nextDate('<%=locale%>'); return(false);">
<img id="<%=locale%>_nextDate_img" src="/images/arrows-grey-left.gif" />
</a>
</div>
</th>
</tr>
<% services(locale, services, (service) => { %>
<tr>
<th style="border-right: 0; padding-left: 8px; padding-right: 8px; text-align: left;">
<%= service.label %>
<span style="font-size: 11px" >(<%= service.region_label %>)</span>
</th>
<th style="border-left: 0;"></th>
</tr>
<% }) %>
</table>
</td>
<td style="width: 100%; vertical-align: top; padding: 0; margin: 0; text-align: left;">
<div style="height: 8608px; position: relative;" id="NAstatusHistoryContentParent" class="statusHistoryContentParent">
<table id="<%=locale%>statusHistoryContent" class="statusHistory statusHistoryContent">
<tr>
<th>Feb 27</th>
<th>Feb 26</th>
<th>Feb 25</th>
<th>Feb 24</th>
<th>Feb 23</th>
<th>Feb 22</th>
<th>Feb 21</th>
</tr>
<% services(locale, services, (service) => { %>
<tr>
<% service.archive.forEach((reading) => { %>
<td><img src="/images/status<%=reading.status%>.gif" /></td>
<% }) %>
</tr>
<% }) %>
</table>
</div>
</td>
<td style="vertical-align: top; padding: 0; margin: 0;">
<table id="<%=locale%>statusHistoryContentRight" class="statusHistory statusHistoryContentRight" cellspacing="0">
<tr>
<th style="text-align: center;">
<a href="#" onclick="prevDate('<%=locale%>'); return(false);">
<img id="<%=locale%>_prevDate_img" src="/images/arrows-red-right.gif" />
</a>
</th>
</tr>
<% services(locale, services, (service) => { %>
<tr>
<td>&nbsp;</td>
</tr>
<% }) %>
</table>
</td>
</tr>
</table>
</div>
<% }) %>
</div>
</div>
<br />
<br />
<hr style="width: 95%; border: 0; height: 1px; background-color: #eeeeee;" />
<div style="text-align: center">
<a href="http://aws.amazon.com/terms">Conditions of Use</a>
|
<a href="http://aws.amazon.com/privacy">Privacy Notice</a>
2006-2017 Amazon Web Services LLC or its affiliates. All rights reserved.
</div>
</div>
<script type="text/javascript">
var savedValCookie = "shdSelectedTabs",
currIdx = YAHOO.util.Cookie.getSub(savedValCookie,"current"),
archIdx = YAHOO.util.Cookie.getSub(savedValCookie,"archive"),
tabView = new YAHOO.widget.TabView("current_events_block",{activeIndex: currIdx}),
archiveTabView = new YAHOO.widget.TabView("archived_events_block", {activeIndex: archIdx}),
tab,
tabIdx = 0;
while(tab = tabView.getTab(tabIdx)) {
tab.addListener("click", localeTabHandler, {subcookie: "current", idx: tabIdx});
tabIdx++;
}
tabIdx = 0;
while(tab = archiveTabView.getTab(tabIdx)) {
tab.addListener("click", localeTabHandler, {subcookie: "archive", idx: tabIdx});
tabIdx++;
}
function localeTabHandler(event, data) {
YAHOO.util.Cookie.setSub(savedValCookie, data.subcookie, data.idx, {expires: new Date("January 1, 2025")});
}
</script>
</body>
</html>
<!-- Generated on: <%= generated_on %> -->
<div style="background-color:#FFCD99;border: 2px solid #B37E46;padding:5px;margin-top:10px;">
<h3>Increased Error Rates</h3>
<p>Update at 10:33 AM PST: We"re continuing to work to remediate the availability issues for Amazon S3 in US-EAST-1. AWS services and customer applications depending on S3 will continue to experience high error rates as we are actively working to remediate the errors in Amazon S3.</p>
</div>
{
"regions": {
"AP": {
"label": "Asia Pacific",
"services": [
"apigateway-ap-northeast-2",
"apigateway-ap-southeast-1",
"apigateway-ap-southeast-2",
"apigateway-ap-northeast-1",
"appstream2-ap-northeast-1",
"clouddirectory-ap-southeast-1",
"clouddirectory-ap-southeast-2",
"cloudfront",
"cloudsearch-ap-northeast-2",
"cloudsearch-ap-southeast-1",
"cloudsearch-ap-southeast-2",
"cloudsearch-ap-northeast-1",
"cloudwatch-ap-south-1",
"cloudwatch-ap-northeast-2",
"cloudwatch-ap-southeast-1",
"cloudwatch-ap-southeast-2",
"cloudwatch-ap-northeast-1",
"cloudwatchevents-ap-south-1",
"cloudwatchevents-ap-northeast-2",
"cloudwatchevents-ap-southeast-1",
"cloudwatchevents-ap-southeast-2",
"cloudwatchevents-ap-northeast-1",
"cognito-ap-northeast-2",
"cognito-ap-southeast-2",
"cognito-ap-northeast-1",
"dynamodb-ap-south-1",
"dynamodb-ap-northeast-2",
"dynamodb-ap-southeast-1",
"dynamodb-ap-southeast-2",
"dynamodb-ap-northeast-1",
"ecr-ap-southeast-1",
"ecr-ap-southeast-2",
"ecr-ap-northeast-1",
"ecs-ap-southeast-1",
"ecs-ap-southeast-2",
"ecs-ap-northeast-1",
"ec2-ap-south-1",
"ec2-ap-northeast-2",
"ec2-ap-southeast-1",
"ec2-ap-southeast-2",
"ec2-ap-northeast-1",
"elb-ap-south-1",
"elb-ap-northeast-2",
"elb-ap-southeast-1",
"elb-ap-southeast-2",
"elb-ap-northeast-1",
"emr-ap-south-1",
"emr-ap-northeast-2",
"emr-ap-southeast-1",
"emr-ap-southeast-2",
"emr-ap-northeast-1",
"elastictranscoder-ap-south-1",
"elastictranscoder-ap-southeast-1",
"elastictranscoder-ap-southeast-2",
"elastictranscoder-ap-northeast-1",
"elasticache-ap-south-1",
"elasticache-ap-northeast-2",
"elasticache-ap-southeast-1",
"elasticache-ap-southeast-2",
"elasticache-ap-northeast-1",
"elasticsearch-ap-south-1",
"elasticsearch-ap-northeast-2",
"elasticsearch-ap-southeast-1",
"elasticsearch-ap-southeast-2",
"elasticsearch-ap-northeast-1",
"gamelift-ap-south-1",
"gamelift-ap-northeast-2",
"gamelift-ap-southeast-1",
"gamelift-ap-northeast-1",
"glacier-ap-south-1",
"glacier-ap-northeast-2",
"glacier-ap-southeast-2",
"glacier-ap-northeast-1",
"inspector-ap-south-1",
"inspector-ap-northeast-2",
"inspector-ap-southeast-2",
"inspector-ap-northeast-1",
"kinesis-ap-south-1",
"kinesis-ap-northeast-2",
"kinesis-ap-southeast-1",
"kinesis-ap-southeast-2",
"kinesis-ap-northeast-1",
"redshift-ap-south-1",
"redshift-ap-northeast-2",
"redshift-ap-southeast-1",
"redshift-ap-southeast-2",
"redshift-ap-northeast-1",
"rds-ap-south-1",
"rds-ap-northeast-2",
"rds-ap-southeast-1",
"rds-ap-southeast-2",
"rds-ap-northeast-1",
"route53",
"route53domainregistration",
"route53-ap-south-1",
"route53-ap-northeast-2",
"route53-ap-southeast-1",
"route53-ap-southeast-2",
"route53-ap-northeast-1",
"sns-ap-south-1",
"sns-ap-northeast-2",
"sns-ap-southeast-1",
"sns-ap-southeast-2",
"sns-ap-northeast-1",
"sqs-ap-south-1",
"sqs-ap-northeast-2",
"sqs-ap-southeast-1",
"sqs-ap-southeast-2",
"sqs-ap-northeast-1",
"s3-ap-south-1",
"s3-ap-northeast-2",
"s3-ap-southeast-1",
"s3-ap-southeast-2",
"s3-ap-northeast-1",
"swf-ap-south-1",
"swf-ap-northeast-2",
"swf-ap-southeast-1",
"swf-ap-southeast-2",
"swf-ap-northeast-1",
"simpledb-ap-southeast-1",
"simpledb-ap-southeast-2",
"simpledb-ap-northeast-1",
"vpc-ap-south-1",
"vpc-ap-northeast-2",
"vpc-ap-southeast-1",
"vpc-ap-southeast-2",
"vpc-ap-northeast-1",
"workdocs-ap-southeast-1",
"workdocs-ap-southeast-2",
"workdocs-ap-northeast-1",
"workspaces-ap-southeast-1",
"workspaces-ap-southeast-2",
"workspaces-ap-northeast-1",
"autoscaling-ap-south-1",
"autoscaling-ap-northeast-2",
"autoscaling-ap-southeast-1",
"autoscaling-ap-southeast-2",
"autoscaling-ap-northeast-1",
"certificatemanager-ap-south-1",
"certificatemanager-ap-northeast-2",
"certificatemanager-ap-southeast-1",
"certificatemanager-ap-southeast-2",
"certificatemanager-ap-northeast-1",
"cloudformation-ap-south-1",
"cloudformation-ap-northeast-2",
"cloudformation-ap-southeast-1",
"cloudformation-ap-southeast-2",
"cloudformation-ap-northeast-1",
"cloudhsm-ap-southeast-1",
"cloudhsm-ap-southeast-2",
"cloudhsm-ap-northeast-1",
"cloudtrail-ap-south-1",
"cloudtrail-ap-northeast-2",
"cloudtrail-ap-southeast-1",
"cloudtrail-ap-southeast-2",
"cloudtrail-ap-northeast-1",
"codedeploy-ap-south-1",
"codedeploy-ap-northeast-2",
"codedeploy-ap-southeast-1",
"codedeploy-ap-southeast-2",
"codedeploy-ap-northeast-1",
"codepipeline-ap-southeast-1",
"codepipeline-ap-southeast-2",
"codepipeline-ap-northeast-1",
"config-ap-south-1",
"config-ap-northeast-2",
"config-ap-southeast-1",
"config-ap-southeast-2",
"config-ap-northeast-1",
"datapipeline-ap-southeast-2",
"datapipeline-ap-northeast-1",
"dms-ap-south-1",
"dms-ap-northeast-2",
"dms-ap-southeast-1",
"dms-ap-southeast-2",
"dms-ap-northeast-1",
"directconnect-ap-south-1",
"directconnect-ap-northeast-2",
"directconnect-ap-southeast-1",
"directconnect-ap-southeast-2",
"directconnect-ap-northeast-1",
"directoryservice-ap-northeast-2",
"directoryservice-ap-southeast-1",
"directoryservice-ap-southeast-2",
"directoryservice-ap-northeast-1",
"elasticbeanstalk-ap-south-1",
"elasticbeanstalk-ap-northeast-2",
"elasticbeanstalk-ap-southeast-1",
"elasticbeanstalk-ap-southeast-2",
"elasticbeanstalk-ap-northeast-1",
"iam-ap-south-1",
"iam-ap-northeast-2",
"iam-ap-southeast-1",
"iam-ap-southeast-2",
"iam-ap-northeast-1",
"import-export",
"internetconnectivity-ap-south-1",
"internetconnectivity-ap-northeast-2",
"internetconnectivity-ap-southeast-1",
"internetconnectivity-ap-southeast-2",
"internetconnectivity-ap-northeast-1",
"awsiot-ap-northeast-2",
"awsiot-ap-southeast-1",
"awsiot-ap-southeast-2",
"awsiot-ap-northeast-1",
"kms-ap-south-1",
"kms-ap-northeast-2",
"kms-ap-southeast-1",
"kms-ap-southeast-2",
"kms-ap-northeast-1",
"lambda-ap-northeast-2",
"lambda-ap-southeast-1",
"lambda-ap-southeast-2",
"lambda-ap-northeast-1",
"management-console",
"marketplace",
"opsworks-ap-south-1",
"opsworks-ap-northeast-2",
"opsworks-ap-southeast-1",
"opsworks-ap-southeast-2",
"opsworks-ap-northeast-1",
"servicecatalog-ap-southeast-1",
"servicecatalog-ap-southeast-2",
"servicecatalog-ap-northeast-1",
"state-ap-northeast-1",
"storagegateway-ap-northeast-2",
"storagegateway-ap-southeast-1",
"storagegateway-ap-southeast-2",
"storagegateway-ap-northeast-1",
"awswaf"
]
},
"EU": {
"label": "Europe",
"services": [
"apigateway-eu-central-1",
"apigateway-eu-west-1",
"apigateway-eu-west-2",
"appstream2-eu-west-1",
"clouddirectory-eu-west-1",
"cloudfront",
"cloudsearch-eu-central-1",
"cloudsearch-eu-west-1",
"cloudwatch-eu-central-1",
"cloudwatch-eu-west-1",
"cloudwatch-eu-west-2",
"cloudwatchevents-eu-central-1",
"cloudwatchevents-eu-west-1",
"cloudwatchevents-eu-west-2",
"cognito-eu-central-1",
"cognito-eu-west-1",
"dynamodb-eu-central-1",
"dynamodb-eu-west-1",
"dynamodb-eu-west-2",
"ecr-eu-central-1",
"ecr-eu-west-1",
"ecr-eu-west-2",
"ecs-eu-central-1",
"ecs-eu-west-1",
"ecs-eu-west-2",
"ec2-eu-central-1",
"ec2-eu-west-1",
"ec2-eu-west-2",
"elasticfilesystem-eu-west-1",
"elb-eu-central-1",
"elb-eu-west-1",
"elb-eu-west-2",
"emr-eu-central-1",
"emr-eu-west-1",
"emr-eu-west-2",
"elastictranscoder-eu-west-1",
"elasticache-eu-central-1",
"elasticache-eu-west-1",
"elasticache-eu-west-2",
"elasticsearch-eu-central-1",
"elasticsearch-eu-west-1",
"gamelift-eu-central-1",
"gamelift-eu-west-1",
"glacier-eu-central-1",
"glacier-eu-west-1",
"glacier-eu-west-2",
"inspector-eu-west-1",
"kinesis-eu-central-1",
"kinesis-eu-west-1",
"kinesis-eu-west-2",
"kinesisanalytics-eu-west-1",
"firehose-eu-west-1",
"aml-eu-west-1",
"polly-eu-west-1",
"redshift-eu-central-1",
"redshift-eu-west-1",
"redshift-eu-west-2",
"rekognition-eu-west-1",
"rds-eu-central-1",
"rds-eu-west-1",
"rds-eu-west-2",
"route53",
"route53domainregistration",
"route53-eu-central-1",
"route53-eu-west-1",
"route53-eu-west-2",
"ses-eu-west-1",
"sns-eu-central-1",
"sns-eu-west-1",
"sns-eu-west-2",
"sqs-eu-central-1",
"sqs-eu-west-1",
"sqs-eu-west-2",
"s3-eu-central-1",
"s3-eu-west-1",
"s3-eu-west-2",
"swf-eu-central-1",
"swf-eu-west-1",
"swf-eu-west-2",
"simpledb-eu-west-1",
"vpc-eu-central-1",
"vpc-eu-west-1",
"vpc-eu-west-2",
"workdocs-eu-west-1",
"workmail-eu-west-1",
"workspaces-eu-central-1",
"workspaces-eu-west-1",
"autoscaling-eu-central-1",
"autoscaling-eu-west-1",
"autoscaling-eu-west-2",
"certificatemanager-eu-central-1",
"certificatemanager-eu-west-1",
"certificatemanager-eu-west-2",
"cloudformation-eu-central-1",
"cloudformation-eu-west-1",
"cloudformation-eu-west-2",
"cloudhsm-eu-central-1",
"cloudhsm-eu-west-1",
"cloudtrail-eu-central-1",
"cloudtrail-eu-west-1",
"cloudtrail-eu-west-2",
"codebuild-eu-west-1",
"codecommit-eu-west-1",
"codedeploy-eu-central-1",
"codedeploy-eu-west-1",
"codedeploy-eu-west-2",
"codepipeline-eu-central-1",
"codepipeline-eu-west-1",
"config-eu-central-1",
"config-eu-west-1",
"config-eu-west-2",
"datapipeline-eu-west-1",
"dms-eu-central-1",
"dms-eu-west-1",
"dms-eu-west-2",
"directconnect-eu-central-1",
"directconnect-eu-west-1",
"directconnect-eu-west-2",
"directoryservice-eu-central-1",
"directoryservice-eu-west-1",
"elasticbeanstalk-eu-central-1",
"elasticbeanstalk-eu-west-1",
"elasticbeanstalk-eu-west-2",
"iam-eu-central-1",
"iam-eu-west-1",
"iam-eu-west-2",
"import-export",
"internetconnectivity-eu-central-1",
"internetconnectivity-eu-west-1",
"internetconnectivity-eu-west-2",
"awsiot-eu-central-1",
"awsiot-eu-west-1",
"kms-eu-central-1",
"kms-eu-west-1",
"kms-eu-west-2",
"lambda-eu-central-1",
"lambda-eu-west-1",
"lambda-eu-west-2",
"management-console",
"marketplace",
"opsworkschef-eu-west-1",
"opsworks-eu-central-1",
"opsworks-eu-west-1",
"opsworks-eu-west-2",
"quicksight-eu-west-1",
"servicecatalog-eu-central-1",
"servicecatalog-eu-west-1",
"servicecatalog-eu-west-2",
"state-eu-west-1",
"storagegateway-eu-central-1",
"storagegateway-eu-west-1",
"storagegateway-eu-west-2",
"awswaf"
]
},
"NA": {
"label": "North America",
"services": [
"apigateway-us-west-1",
"apigateway-us-east-1",
"apigateway-us-east-2",
"apigateway-us-west-2",
"appstream-us-east-1",
"appstream2-us-east-1",
"appstream2-us-west-2",
"athena-us-east-1",
"athena-us-east-2",
"athena-us-west-2",
"clouddirectory-us-east-1",
"clouddirectory-us-east-2",
"clouddirectory-us-west-2",
"cloudfront",
"cloudsearch-us-west-1",
"cloudsearch-us-east-1",
"cloudsearch-us-west-2",
"cloudwatch-ca-central-1",
"cloudwatch-us-west-1",
"cloudwatch-us-east-1",
"cloudwatch-us-east-2",
"cloudwatch-us-west-2",
"cloudwatchevents-us-west-1",
"cloudwatchevents-us-east-1",
"cloudwatchevents-us-east-2",
"cloudwatchevents-us-west-2",
"cognito-us-east-1",
"cognito-us-east-2",
"cognito-us-west-2",
"dynamodb-ca-central-1",
"dynamodb-us-west-1",
"dynamodb-us-east-1",
"dynamodb-us-east-2",
"dynamodb-us-west-2",
"ecr-ca-central-1",
"ecr-us-west-1",
"ecr-us-east-1",
"ecr-us-east-2",
"ecr-us-west-2",
"ecs-ca-central-1",
"ecs-us-west-1",
"ecs-us-east-1",
"ecs-us-east-2",
"ecs-us-west-2",
"ec2-ca-central-1",
"ec2-us-west-1",
"ec2-us-east-1",
"ec2-us-east-2",
"ec2-us-west-2",
"elasticfilesystem-us-east-1",
"elasticfilesystem-us-east-2",
"elasticfilesystem-us-west-2",
"elb-ca-central-1",
"elb-us-west-1",
"elb-us-east-1",
"elb-us-east-2",
"elb-us-west-2",
"emr-ca-central-1",
"emr-us-west-1",
"emr-us-east-1",
"emr-us-east-2",
"emr-us-west-2",
"elastictranscoder-us-west-1",
"elastictranscoder-us-east-1",
"elastictranscoder-us-west-2",
"elasticache-ca-central-1",
"elasticache-us-west-1",
"elasticache-us-east-1",
"elasticache-us-east-2",
"elasticache-us-west-2",
"elasticsearch-us-west-1",
"elasticsearch-us-east-1",
"elasticsearch-us-east-2",
"elasticsearch-us-west-2",
"gamelift-us-east-1",
"gamelift-us-west-2",
"glacier-ca-central-1",
"glacier-us-west-1",
"glacier-us-east-1",
"glacier-us-east-2",
"glacier-us-west-2",
"inspector-us-east-1",
"inspector-us-west-2",
"kinesis-ca-central-1",
"kinesis-us-west-1",
"kinesis-us-east-1",
"kinesis-us-east-2",
"kinesis-us-west-2",
"kinesisanalytics-us-east-1",
"kinesisanalytics-us-west-2",
"firehose-us-east-1",
"firehose-us-west-2",
"lightsail-us-east-1",
"aml-us-east-1",
"analytics-us-east-1",
"pinpoint-us-east-1",
"polly-us-east-1",
"polly-us-east-2",
"polly-us-west-2",
"redshift-ca-central-1",
"redshift-us-west-1",
"redshift-us-east-1",
"redshift-us-east-2",
"redshift-us-west-2",
"rekognition-us-east-1",
"rekognition-us-west-2",
"rds-ca-central-1",
"rds-us-west-1",
"rds-us-east-1",
"rds-us-east-2",
"rds-us-west-2",
"route53",
"route53domainregistration",
"route53-ca-central-1",
"route53-us-west-1",
"route53-us-east-1",
"route53-us-east-2",
"route53-us-west-2",
"ses-us-east-1",
"ses-us-west-2",
"sns-ca-central-1",
"sns-us-west-1",
"sns-us-east-1",
"sns-us-east-2",
"sns-us-west-2",
"sqs-ca-central-1",
"sqs-us-west-1",
"sqs-us-east-1",
"sqs-us-east-2",
"sqs-us-west-2",
"s3-ca-central-1",
"s3-us-west-1",
"s3-us-east-2",
"s3-us-west-2",
"s3-us-standard",
"swf-ca-central-1",
"swf-us-west-1",
"swf-us-east-1",
"swf-us-east-2",
"swf-us-west-2",
"simpledb-us-west-1",
"simpledb-us-east-1",
"simpledb-us-west-2",
"vpc-ca-central-1",
"vpc-us-west-1",
"vpc-us-east-1",
"vpc-us-east-2",
"vpc-us-west-2",
"workdocs-us-east-1",
"workdocs-us-west-2",
"workmail-us-east-1",
"workmail-us-west-2",
"workspaces-us-east-1",
"workspaces-us-west-2",
"autoscaling-ca-central-1",
"autoscaling-us-west-1",
"autoscaling-us-east-1",
"autoscaling-us-east-2",
"autoscaling-us-west-2",
"batch-us-east-1",
"certificatemanager-ca-central-1",
"certificatemanager-us-west-1",
"certificatemanager-us-east-1",
"certificatemanager-us-east-2",
"certificatemanager-us-west-2",
"cloudformation-ca-central-1",
"cloudformation-us-west-1",
"cloudformation-us-east-1",
"cloudformation-us-east-2",
"cloudformation-us-west-2",
"cloudhsm-ca-central-1",
"cloudhsm-us-west-1",
"cloudhsm-us-east-1",
"cloudhsm-us-east-2",
"cloudhsm-us-west-2",
"cloudtrail-ca-central-1",
"cloudtrail-us-west-1",
"cloudtrail-us-east-1",
"cloudtrail-us-east-2",
"cloudtrail-us-west-2",
"codebuild-us-east-1",
"codebuild-us-east-2",
"codebuild-us-west-2",
"codecommit-us-east-1",
"codecommit-us-east-2",
"codecommit-us-west-2",
"codedeploy-ca-central-1",
"codedeploy-us-west-1",
"codedeploy-us-east-1",
"codedeploy-us-east-2",
"codedeploy-us-west-2",
"codepipeline-us-east-1",
"codepipeline-us-east-2",
"codepipeline-us-west-2",
"config-ca-central-1",
"config-us-west-1",
"config-us-east-1",
"config-us-east-2",
"config-us-west-2",
"datapipeline-us-east-1",
"datapipeline-us-west-2",
"dms-ca-central-1",
"dms-us-west-1",
"dms-us-east-1",
"dms-us-east-2",
"dms-us-west-2",
"devicefarm-us-west-2",
"directconnect-ca-central-1",
"directconnect-us-west-1",
"directconnect-us-east-1",
"directconnect-us-east-2",
"directconnect-us-west-2",
"directoryservice-us-east-1",
"directoryservice-us-east-2",
"directoryservice-us-west-2",
"elasticbeanstalk-ca-central-1",
"elasticbeanstalk-us-west-1",
"elasticbeanstalk-us-east-1",
"elasticbeanstalk-us-east-2",
"elasticbeanstalk-us-west-2",
"iam-ca-central-1",
"iam-us-west-1",
"iam-us-east-1",
"iam-us-east-2",
"iam-us-west-2",
"import-export",
"internetconnectivity-ca-central-1",
"internetconnectivity-us-west-1",
"internetconnectivity-us-east-1",
"internetconnectivity-us-east-2",
"internetconnectivity-us-west-2",
"awsiot-us-east-1",
"awsiot-us-east-2",
"awsiot-us-west-2",
"kms-ca-central-1",
"kms-us-west-1",
"kms-us-east-1",
"kms-us-east-2",
"kms-us-west-2",
"lambda-us-west-1",
"lambda-us-east-1",
"lambda-us-east-2",
"lambda-us-west-2",
"management-console",
"marketplace",
"mobilehub-us-east-1",
"mobilehub-us-east-2",
"opsworkschef-us-east-1",
"opsworkschef-us-west-2",
"opsworks-us-west-1",
"opsworks-us-east-1",
"opsworks-us-east-2",
"opsworks-us-west-2",
"quicksight-us-east-1",
"quicksight-us-west-2",
"servicecatalog-ca-central-1",
"servicecatalog-us-east-1",
"servicecatalog-us-east-2",
"servicecatalog-us-west-2",
"state-us-east-1",
"state-us-east-2",
"state-us-west-2",
"storagegateway-ca-central-1",
"storagegateway-us-west-1",
"storagegateway-us-east-1",
"storagegateway-us-east-2",
"storagegateway-us-west-2",
"awswaf"
]
},
"SA": {
"label": "South America",
"services": [
"cloudfront",
"cloudsearch-sa-east-1",
"cloudwatch-sa-east-1",
"cloudwatchevents-sa-east-1",
"dynamodb-sa-east-1",
"ec2-sa-east-1",
"elb-sa-east-1",
"emr-sa-east-1",
"elasticache-sa-east-1",
"elasticsearch-sa-east-1",
"gamelift-sa-east-1",
"kinesis-sa-east-1",
"redshift-sa-east-1",
"rds-sa-east-1",
"route53",
"route53domainregistration",
"route53-sa-east-1",
"sns-sa-east-1",
"sqs-sa-east-1",
"s3-sa-east-1",
"swf-sa-east-1",
"simpledb-sa-east-1",
"vpc-sa-east-1",
"autoscaling-sa-east-1",
"certificatemanager-sa-east-1",
"cloudformation-sa-east-1",
"cloudtrail-sa-east-1",
"codedeploy-sa-east-1",
"codepipeline-sa-east-1",
"config-sa-east-1",
"dms-sa-east-1",
"directconnect-sa-east-1",
"elasticbeanstalk-sa-east-1",
"iam-sa-east-1",
"internetconnectivity-sa-east-1",
"kms-sa-east-1",
"management-console",
"marketplace",
"opsworks-sa-east-1",
"storagegateway-sa-east-1",
"awswaf"
]
}
}
}
/* CSS Style for Service Health Dashboard */
body { margin: 0; }
.container {
/* total width is width + padding + border + margin. Goal width here is 800px */
width: 800px;
margin: auto;
padding: 10px;
font-family: sans-serif;
font-size: 12px;
}
h3 {
font-size: 13.5pt;
}
a {
color: #000088;
/* text-decoration: none; */
}
a:hover {
text-decoration: underline;
}
a img {
border: 0;
}
table {
font-size: 12px;
}
.linkbar {
background-color: #eeeeee;
border-top: 3px solid #228822;
padding: 8px;
margin: 8px 0 0 0;
}
.linkbar a {
text-decoration: none;
color: #444444;
font-weight: bold;
}
.gradient {
background-color: #eeeeee;
background-image: url("/images/gradient90.gif");
background-repeat: repeat-x;
}
th.gradient {
background-image: url("/images/gradient24.gif");
border-bottom: 1px solid #cccccc;
color: #444444;
}
td.gradient {
background-image: url("/images/gradient32.gif");
border: 1px solid #cccccc;
/* color: #444444; */
}
.whitebg {
background-color: white;
}
.bordered {
border: 1px solid #cccccc;
}
.bordered-dark {
border: 1px solid #888888;
}
.bb { /* border-bottom */
border-bottom: 1px solid #cccccc;
}
.fullWidth {
width: 100%;
}
.floatLeft {
float: left;
}
.floatRight {
float: right;
}
.clear {
clear: both;
}
.bold {
font-weight: bold;
}
.left {
text-align: left;
}
.right {
text-align: right;
}
.top {
vertical-align: top;
}
.middle {
vertical-align: middle;
}
.center {
text-align: center;
}
.margin8 {
margin: 8px;
}
.pad2 {
padding: 2px;
}
.pad04 {
padding: 4px 0 4px 0;
}
.pad4 {
padding: 4px;
}
.pad8 {
padding: 8px;
}
.greybg {
background-color: #eeeeee;
}
.whitebg {
background-color: #ffffff;
}
.yellowbg {
background-color: #fcfdef;
}
.yellowfg {
color: #997744;
}
.greyfg {
color: #444444;
}
.orangefg {
color: #dd6622;
}
.archivePopup {
position: absolute;
z-index: 10;
width: 35em;
bottom: 0px;
right: 20px;
text-align: left;
}
/* One particular table styled individually. */
table.statusHistory {
border-collapse: collapse;
}
table.statusHistory th, table.statusHistory td {
height: 32px;
border: 1px solid #cccccc;
}
table.statusHistory th {
color: #444444;
background-color: #eeeeee;
background-image: url("/images/gradient32.gif");
vertical-align: middle;
text-align: center;
font-weight: normal;
}
table.statusHistory td {
background-color: white;
}
table.statusHistory table td {
text-align: left;
border: 0;
}
table.statusHistory table td div {
width: 100%;
}
div.statusHistoryContentParent {
overflow: visible;
/* width: 470px;
height: 100%;
background-color: #cc4444;
margin-left: -1px;
margin-right: -1px;
z-index: 0;
vertical-align: top;
position: relative; */
}
table.statusHistoryContent {
position: absolute;
top: 0px;
left: 0px;
width: 454px;
z-index: 0;
/* display: none; */
}
table.statusHistoryContent td, table.statusHistoryContent th{
width: 58px;
text-align: center;
vertical-align: middle;
}
table.statusHistoryContentLeft {
width: 300px;
margin-right: -1px;
}
table.statusHistoryContentLeft td {
padding-left: 8px;
padding-right: 8px;
}
table.statusHistoryContentRight {
width: 32px;
border-collapse: collapse;
/* margin-left: -1px; */
}
table.statusHistoryContentRight td {
width: 32px;
background-image: url("/images/gradient32.gif");
background-color: #eeeeee;
}
.yui-skin-sam .yui-navset .yui-nav .tabStandard a {
text-decoration: none;
font-size: 13px;
color: black;
border-top: #B9B8B6 1px solid;
border-left: #B9B8B6 1px solid;
border-right: #B9B8B6 1px solid;
border-bottom: #B9B8B6 1px solid;
padding: 8px 15px;
background: url("/yui/assets/skins/sam/sprite.png") repeat scroll 0 0;
}
.yui-skin-sam .yui-navset .yui-nav .selected a {
border-top: #FF9900 2px solid;
border-left: #B9B8B6 1px solid;
border-right: #B9B8B6 1px solid;
border-bottom: white 1px solid;
font-weight:bold;
background: white none repeat scroll 0 0;
background-color: white;
}
.yui-skin-sam .yui-navset .yui-nav .selected a {
border-top: #FF9900 2px solid;
border-left: #B9B8B6 1px solid;
border-right: #B9B8B6 1px solid;
font-weight:bold;
background: white none repeat scroll 0 0;
background-color: white;
}
.yui-skin-sam .yui-navset ul {
border-bottom: 1px solid white;
}
.yui-skin-sam .yui-navset li {
position: relative;
top: 2px;
}
.awsc-notice {
font-family: "Helvetica Neue",Roboto,Arial,"Droid Sans",sans-serif;
height: 20px;
line-height: 20px;
padding: 5px;
background-color: yellow;
color: black;
text-align: center;
}
p.notice {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 1.125em;
}
a.awsbutton {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 1.125em;
color: #333 !important;
background: #eeba37;
box-shadow: rgba(255, 255, 255, 0.6) 0 1px 0 inset;
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiP…dpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==);
background-size: 100%;
background-size: 100%;
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fee6b0), color-stop(100%, #eeba37));
background-image: -moz-linear-gradient(#fee6b0 0%, #eeba37 100%);
background-image: -webkit-linear-gradient(#fee6b0 0%, #eeba37 100%);
background-image: linear-gradient(#fee6b0 0%, #eeba37 100%);
border: 1px solid;
border-top-color: rgb(190, 149, 44);
border-right-color: rgb(166, 130, 38);
border-bottom-color: rgb(155, 121, 36);
border-left-color: rgb(166, 130, 38);
text-align: center;
line-height: 1.6em;
text-decoration: none !important;
display: inline-block;
background-size: 100%;
padding: 7px 16px 6px;
-moz-border-radius: 3.375px;
-webkit-border-radius: 3.375px;
border-radius: 3.375px;
-webkit-font-smoothing: antialiased
}
a.awsbutton:hover {
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiP…dpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==);
background-size: 100%;
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fede97), color-stop(100%, #ecb21f));
background-image: -moz-linear-gradient(#fede97 0%, #ecb21f 100%);
background-image: -webkit-linear-gradient(#fede97 0%, #ecb21f 100%);
background-image: linear-gradient(#fede97 0%, #ecb21f 100%);
border-top-color: rgb(169, 133, 39);
border-right-color: rgb(145, 114, 33);
border-bottom-color: rgb(134, 105, 31);
border-left-color: rgb(145, 114, 33);
}
a.awsbutton:active {
background-image: linear-gradient(#fede97 0%, #ecb21f 100%);
border-top-color: rgb(155, 121, 36);
border-right-color: rgb(166, 130, 38);
border-bottom-color: rgb(166, 130, 38);
border-left-color: rgb(166, 130, 38);
-moz-box-shadow: rgba(0, 0, 0, 0.2) 0 1px 3px inset;
-webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 1px 3px inset;
box-shadow: rgba(0, 0, 0, 0.2) 0 1px 3px inset;
background-image: none;
}
a.awsbutton:focus {
-moz-box-shadow: rgba(228, 121, 17, 0.5) 0 0 3px;
-webkit-box-shadow: rgba(228, 121, 17, 0.5) 0 0 3px;
box-shadow: rgba(228, 121, 17, 0.5) 0 0 3px;
outline: none;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment