Amazon Elastic Compute Cloud
API Reference (API Version 2014-10-01)
Did this page help you?  Yes | No |  Tell us about it...
« PreviousNext »
View the PDF for this guide.Go to the AWS Discussion Forum for this product.

DescribeInstanceStatus

Describes the status of one or more instances, including any scheduled events.

Instance status has two main components:

  • System Status reports impaired functionality that stems from issues related to the systems that support an instance, such as such as hardware failures and network connectivity problems. This call reports such problems as impaired reachability.

  • Instance Status reports impaired functionality that arises from problems internal to the instance. This call reports such problems as impaired reachability.

Instance status provides information about four types of scheduled events for an instance that may require your attention:

  • Scheduled Reboot: When Amazon EC2 determines that an instance must be rebooted, the instances status returns one of two event codes: system-reboot or instance-reboot. System reboot commonly occurs if certain maintenance or upgrade operations require a reboot of the underlying host that supports an instance. Instance reboot commonly occurs if the instance must be rebooted, rather than the underlying host. Rebooting events include a scheduled start and end time.

  • System Maintenance: When Amazon EC2 determines that an instance requires maintenance that requires power or network impact, the instance status is the event code system-maintenance. System maintenance is either power maintenance or network maintenance. For power maintenance, your instance will be unavailable for a brief period of time and then rebooted. For network maintenance, your instance will experience a brief loss of network connectivity. System maintenance events include a scheduled start and end time. You will also be notified by email if one of your instances is set for system maintenance. The email message indicates when your instance is scheduled for maintenance.

  • Scheduled Retirement: When Amazon EC2 determines that an instance must be shut down, the instance status is the event code instance-retirement. Retirement commonly occurs when the underlying host is degraded and must be replaced. Retirement events include a scheduled start and end time. You will also be notified by email if one of your instances is set to retiring. The email message indicates when your instance will be permanently retired.

  • Scheduled Stop: When Amazon EC2 determines that an instance must be shut down, the instances status returns an event code called instance-stop. Stop events include a scheduled start and end time. You will also be notified by email if one of your instances is set to stop. The email message indicates when your instance will be stopped.

When your instance is retired, it will either be terminated (if its root device type is the instance-store) or stopped (if its root device type is an EBS volume). Instances stopped due to retirement will not be restarted, but you can do so manually. You can also avoid retirement of EBS-backed instances by manually restarting your instance when its event code is instance-retirement. This ensures that your instance is started on a different underlying host.

For more information about failed status checks, see Troubleshooting Instances with Failed Status Checks in the Amazon Elastic Compute Cloud User Guide. For more information about working with scheduled events, see Working with an Instance That Has a Scheduled Event in the Amazon Elastic Compute Cloud User Guide.

Request Parameters

For information about the common parameters that all actions use, see Common Query Parameters.

InstanceId.N

One or more instance IDs.

Default: Describes all your instances.

Constraints: Maximum 100 explicitly specified instance IDs.

Type: String list

Required: No

MaxResults

The maximum number of paginated instance items per response. The call also returns a token that you can specify in a subsequent call to get the next set of results. If the value is greater than 1000, we return only 1000 items.

Default: 1000

Type: Integer

Required: No

NextToken

The next paginated set of results to return. (You received this token from a prior call.)

Type: String

Required: No

DryRun

Type: Boolean

Required: No

Filter.N

One or more filters.

  • availability-zone - The Availability Zone of the instance.

  • event.code - The code identifying the type of event (instance-reboot | system-reboot | system-maintenance | instance-retirement | instance-stop).

  • event.description - A description of the event.

  • event.not-after - The latest end time for the scheduled event, for example: 2010-09-15T17:15:20.000Z.

  • event.not-before - The earliest start time for the scheduled event, for example: 2010-09-15T17:15:20.000Z.

  • instance-state-code - A code representing the state of the instance, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

  • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

  • instance-status.reachability - Filters on instance status where the name is reachability (passed | failed | initializing | insufficient-data).

  • instance-status.status - The status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

  • system-status.reachability - Filters on system status where the name is reachability (passed | failed | initializing | insufficient-data).

  • system-status.status - The system status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

Type: Filter list

Required: No

IncludeAllInstances

When true, includes the health status for all instances. When false, includes the health status for running instances only.

Default: false

Type: Boolean

Required: No

Response Elements

The following elements are returned.

instanceStatusSet

One or more instance status descriptions.

Type: InstanceStatus list

nextToken

The next paginated set of results to return.

Type: String

requestId

The ID of the request.

Type: String

Errors

For information about the errors that are common to all actions, see Common Client Errors.

Examples

Example 1

This example returns instance status descriptions for all instances.

Sample Request

https://ec2.amazonaws.com/?
Action=DescribeInstanceStatus
&AUTHPARAMS

Example 2

This example returns instance status descriptions for the specified instances.

Sample Request

https://ec2.amazonaws.com/?
Action=DescribeInstanceStatus
&InstanceId.0=i-1a2b3c4d
&InstanceId.1=i-2a2b3c4d
&AUTHPARAMS

Example 3

This example returns instance status descriptions for all instances specified by supported DescribeInstanceStatus filters.

Sample Request

https://ec2.amazonaws.com/?
Action=DescribeInstanceStatus
&Filter.0.Name=system-status.reachability
&Filter.0.Value.failed
&AUTHPARAMS

Sample Response

<DescribeInstanceStatusResponse xmlns="http://ec2.amazonaws.com/doc/2014-10-01/">
    <requestId>3be1508e-c444-4fef-89cc-0b1223c4f02fEXAMPLE</requestId>
    <instanceStatusSet>
        <item>
            <instanceId>i-1a2b3c4d</instanceId>
            <availabilityZone>us-east-1d</availabilityZone>
            <instanceState>
                <code>16</code>
                <name>running</name>
            </instanceState>
            <systemStatus>
                <status>impaired</status>
                <details>
                    <item>
                        <name>reachability</name>
                        <status>failed</status>
                        <impairedSince>YYYY-MM-DDTHH:MM:SS.000Z</impairedSince>
                    </item>
                </details>
            </systemStatus>
            <instanceStatus>
                <status>impaired</status>
                <details>
                    <item>
                        <name>reachability</name>
                        <status>failed</status>
                        <impairedSince>YYYY-MM-DDTHH:MM:SS.000Z</impairedSince>
                    </item>
                </details>
            </instanceStatus>
            <eventsSet>
              <item>
                <code>instance-retirement</code>
                <description>The instance is running on degraded hardware</description>
                <notBefore>YYYY-MM-DDTHH:MM:SS+0000</notBefore>
                <notAfter>YYYY-MM-DDTHH:MM:SS+0000</notAfter>
              </item>
            </eventsSet>
        </item>
        <item>
            <instanceId>i-2a2b3c4d</instanceId>
            <availabilityZone>us-east-1d</availabilityZone>
            <instanceState>
                <code>16</code>
                <name>running</name>
            </instanceState>
            <systemStatus>
                <status>ok</status>
                <details>
                    <item>
                        <name>reachability</name>
                        <status>passed</status>
                    </item>
                </details>
            </systemStatus>
            <instanceStatus>
                <status>ok</status>
                <details>
                    <item>
                        <name>reachability</name>
                        <status>passed</status>
                    </item>
                </details>
            </instanceStatus>
            <eventsSet>
              <item>
                <code>instance-reboot</code>
                <description>The instance is scheduled for a reboot</description>
                <notBefore>YYYY-MM-DDTHH:MM:SS+0000</notBefore>
                <notAfter>YYYY-MM-DDTHH:MM:SS+0000</notAfter>
              </item>
            </eventsSet>
        </item>
        <item>
            <instanceId>i-3a2b3c4d</instanceId>
            <availabilityZone>us-east-1d</availabilityZone>
            <instanceState>
                <code>16</code>
                <name>running</name>
            </instanceState>
            <systemStatus>
                <status>ok</status>
                <details>
                    <item>
                        <name>reachability</name>
                        <status>passed</status>
                    </item>
                </details>
            </systemStatus>
            <instanceStatus>
                <status>ok</status>
                <details>
                    <item>
                        <name>reachability</name>
                        <status>passed</status>
                    </item>
                </details>
            </instanceStatus>
        </item>
        <item>
            <instanceId>i-4a2b3c4d</instanceId>
            <availabilityZone>us-east-1d</availabilityZone>
            <instanceState>
                <code>16</code>
                <name>running</name>
            </instanceState>
            <systemStatus>
                <status>ok</status>
                <details>
                    <item>
                        <name>reachability</name>
                        <status>passed</status>
                    </item>
                </details>
            </systemStatus>
            <instanceStatus>
                <status>insufficient-data</status>
                <details>
                    <item>
                        <name>reachability</name>
                        <status>insufficient-data</status>
                    </item>
                </details>
            </instanceStatus>
         </item>
    </instanceStatusSet>
</DescribeInstanceStatusResponse>