- Navigation GuideYou are on a Command (operation) page with structural examples. Use the navigation breadcrumb if you would like to return to the Client landing page.
DescribeInstanceStatusCommand
Describes the status of the specified instances or all of your instances. By default, only running instances are described, unless you specifically indicate to return the status of all instances.
Instance status includes the following components:
-
Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and software issues. For more information, see Status checks for your instances and Troubleshoot instances with failed status checks in the Amazon EC2 User Guide.
-
Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances related to hardware issues, software updates, or system maintenance. For more information, see Scheduled events for your instances in the Amazon EC2 User Guide.
-
Instance state - You can manage your instances from the moment you launch them through their termination. For more information, see Instance lifecycle in the Amazon EC2 User Guide.
The order of the elements in the response, including those within nested structures, might vary. Applications should not assume the elements appear in a particular order.
Example Syntax
Use a bare-bones client and the command you need to make an API call.
import { EC2Client, DescribeInstanceStatusCommand } from "@aws-sdk/client-ec2"; // ES Modules import
// const { EC2Client, DescribeInstanceStatusCommand } = require("@aws-sdk/client-ec2"); // CommonJS import
const client = new EC2Client(config);
const input = { // DescribeInstanceStatusRequest
InstanceIds: [ // InstanceIdStringList
"STRING_VALUE",
],
MaxResults: Number("int"),
NextToken: "STRING_VALUE",
DryRun: true || false,
Filters: [ // FilterList
{ // Filter
Name: "STRING_VALUE",
Values: [ // ValueStringList
"STRING_VALUE",
],
},
],
IncludeAllInstances: true || false,
};
const command = new DescribeInstanceStatusCommand(input);
const response = await client.send(command);
// { // DescribeInstanceStatusResult
// InstanceStatuses: [ // InstanceStatusList
// { // InstanceStatus
// AvailabilityZone: "STRING_VALUE",
// OutpostArn: "STRING_VALUE",
// Operator: { // OperatorResponse
// Managed: true || false,
// Principal: "STRING_VALUE",
// },
// Events: [ // InstanceStatusEventList
// { // InstanceStatusEvent
// InstanceEventId: "STRING_VALUE",
// Code: "instance-reboot" || "system-reboot" || "system-maintenance" || "instance-retirement" || "instance-stop",
// Description: "STRING_VALUE",
// NotAfter: new Date("TIMESTAMP"),
// NotBefore: new Date("TIMESTAMP"),
// NotBeforeDeadline: new Date("TIMESTAMP"),
// },
// ],
// InstanceId: "STRING_VALUE",
// InstanceState: { // InstanceState
// Code: Number("int"),
// Name: "pending" || "running" || "shutting-down" || "terminated" || "stopping" || "stopped",
// },
// InstanceStatus: { // InstanceStatusSummary
// Details: [ // InstanceStatusDetailsList
// { // InstanceStatusDetails
// ImpairedSince: new Date("TIMESTAMP"),
// Name: "reachability",
// Status: "passed" || "failed" || "insufficient-data" || "initializing",
// },
// ],
// Status: "ok" || "impaired" || "insufficient-data" || "not-applicable" || "initializing",
// },
// SystemStatus: {
// Details: [
// {
// ImpairedSince: new Date("TIMESTAMP"),
// Name: "reachability",
// Status: "passed" || "failed" || "insufficient-data" || "initializing",
// },
// ],
// Status: "ok" || "impaired" || "insufficient-data" || "not-applicable" || "initializing",
// },
// AttachedEbsStatus: { // EbsStatusSummary
// Details: [ // EbsStatusDetailsList
// { // EbsStatusDetails
// ImpairedSince: new Date("TIMESTAMP"),
// Name: "reachability",
// Status: "passed" || "failed" || "insufficient-data" || "initializing",
// },
// ],
// Status: "ok" || "impaired" || "insufficient-data" || "not-applicable" || "initializing",
// },
// },
// ],
// NextToken: "STRING_VALUE",
// };
Example Usage
DescribeInstanceStatusCommand Input
Parameter | Type | Description |
---|
Parameter | Type | Description |
---|---|---|
DryRun | boolean | undefined | Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is |
Filters | Filter[] | undefined | The filters.
|
IncludeAllInstances | boolean | undefined | When Default: |
InstanceIds | string[] | undefined | The instance IDs. Default: Describes all your instances. Constraints: Maximum 100 explicitly specified instance IDs. |
MaxResults | number | undefined | The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination . You cannot specify this parameter and the instance IDs parameter in the same request. |
NextToken | string | undefined | The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request. |
DescribeInstanceStatusCommand Output
Parameter | Type | Description |
---|
Parameter | Type | Description |
---|---|---|
$metadata Required | ResponseMetadata | Metadata pertaining to this request. |
InstanceStatuses | InstanceStatus[] | undefined | Information about the status of the instances. |
NextToken | string | undefined | The token to include in another request to get the next page of items. This value is |
Throws
Name | Fault | Details |
---|
Name | Fault | Details |
---|---|---|
EC2ServiceException | Base exception class for all service exceptions from EC2 service. |