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

DescribeVolumeStatus

Description

Describes the status of one or more volumes. Volume status provides the result of the checks performed on your volumes to determine events that can impair the performance of your volumes. The performance of a volume can be affected if an issue occurs on the volume's underlying host. If the volume's underlying host experiences a power outage or system issue, once the system is restored there could be data inconsistencies on the volume. Volume events notify you if this occurs. Volume actions notify you if any action needs to be taken in response to the event.

The DescribeVolumeStatus operation provides the following information about the specified volumes:

Status: Reflects the current status of the volume. The possible values are ok, impaired , warning, or insufficient-data. If all checks pass, the overall status of the volume is ok. If the check fails, the overall status is impaired. If the status is insufficient-data, then the checks may still be taking place on your volume at the time. We recommend you retry the request. For more information on volume status, see Monitoring the Status of Your Volumes.

Events: Reflect the cause of a volume status and may require you to take an action. For example, if your volume returns an impaired status, then the volume event might be potential-data-inconsistency. This means that your volume has been affected by an issue with the underlying host, has all I/O operations disabled, and may have inconsistent data.

Actions: Reflect the actions you may have to take in response to an event. For example, if the status of the volume is impaired and the volume event shows potential-data-inconsistency, then the action will show enable-volume-io. This means that you may want to enable the I/O operations for the volume by calling the EnableVolumeIO action and then check the volume for data consistency.

Note

Volume status is based on the volume status checks, and does not reflect the volume state. Therefore, volume status does not indicate volumes in the error state (for example, when a volume is incapable of accepting I/O.)

Request Parameters

VolumeId.n

One or more volume IDs.

Type: String

Default: Describes all volumes that you own, or only those otherwise specified.

Required: No

Filter.n.Name

The name of a filter. See the Supported Filters section for a list of supported filter names.

Type: String

Default: None

Required: No

Filter.n.Value.m

A value for the filter. See the Supported Filters section for a list of supported values for each filter.

Type: String

Default: None

Required: No

MaxResults

The maximum number of paginated volume items per response.

Type: Integer

Default: None

Required: No

NextToken

A string specifying the next paginated set of results to return using the pagination token returned by a previous call to this API.

Type: String

Default: None

Required: No

Supported Filters

You can specify filters so that the response includes information for only certain volumes. For example, you can use a filter to specify that you're interested in volumes that have impaired status. You can specify multiple values for a filter. The response includes information for a volume only if it matches at least one of the filter values that you specified.

You can specify multiple filters; for example, specify volumes that are in a specific Availability Zone and have the status impaired. The response includes information for a volume only if it matches all the filters that you specified. If there's no match, no special message is returned, the response is simply empty.

You can use wildcards in a filter value. An asterisk (*) matches zero or more characters, and a question mark (?) matches exactly one character. You can escape special characters using a backslash (\) before the character. For example, a value of \*amazon\?\\ searches for the literal string *amazon?\.

The following are the available filters.

availability-zone

The Availability Zone of the instance.

Type: String

volume-status.status

The status of the volume.

Type: String

Valid values: ok | impaired | warning | insufficient-data

volume-status.details-name

The cause for the volume-status.status.

Type: String

Valid values: io-enabled | io-performance

volume-status.details-status

The status of the volume-status.details-name.

Type: String

Valid values for io-enabled: passed | failed

Valid values for io-performance: normal | degraded | severely-degraded | stalled

event.description

A description of the event.

Type: String

event.not-after

The latest end time for the event.

Type: DateTime

event.not-before

The earliest start time for the event.

Type: DateTime

event.event-id

The event ID.

Type: String

event.event-type

The event type.

Type: String

Valid values for io-enabled: potential-data-inconsistency

Valid values for io-performance: io-performance:degraded | io-performance:severely-degraded | io-performance:stalled

action.code

The action code for the event, for example, enable-volume-io

Type: String

action.event-id

The event ID associated with the action.

Type: String

action.description

A description of the action.

Type: String

Response Elements

The following elements are returned in a DescribeVolumeStatusResponse element.

requestId

The ID of the request.

Type: xsd:string

volumeStatusSet

A list of volumes. Each volume is wrapped in an item element.

Type: VolumeStatusItemType

nextToken

A string specifying the next paginated set of results to return.

Type: xsd:string

Examples

Example Request

This example describes the status of all the volumes associated with your account.

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

Example Response

<DescribeVolumeStatus xmlns="http://ec2.amazonaws.com/doc/2013-02-01/">
   <requestId>5jkdf074-37ed-4004-8671-a78ee82bf1cbEXAMPLE</requestId>
  <volumeStatusSet>
    <item>
      <VolumeId>vol-11111111</volumeId>
      <availabilityZone>&region_iad;&az4;</availabilityZone>
      <volumeStatus>
        <status>ok</status>
        <details>
          <item>
            <name>io-enabled</name>
            <status>passed</status>
          </item>
        </details>
      </volumeStatus>
      </item>
    <item>
      <volumeId>vol-22222222</volumeId>
      <availabilityZone>&region_iad;&az4;</availabilityZone>
      <volumeStatus>
        <status>impaired</status>
        <details>
          <item>
            <name>io-enabled</name>
            <status>failed</status>
          </item>
        </details>
      </volumeStatus>
      <eventsSet>
             <item>
               <eventId>evol-61a54008</eventId>
               <eventType>potential-data-inconsistency</eventType>
               <description>THIS IS AN EXAMPLE</description>
               <notBefore>2011-12-01T14:00:00.000Z</notBefore>
               <notAfter>2011-12-01T15:00:00.000Z</notAfter>
             </item>
            </eventsSet>
      <actionsSet>
        <item>
          <code>enable-volume-io</code>
          <eventId> evol-61a54008</eventId>
          <eventType>potential-data-inconsistency</eventType>
          <description>THIS IS AN EXAMPLE</description>          
        </item>
      </actionsSet>
    </item>
    </volumeStatusSet>
</DescribeVolumesStatusResponse>

Example Request

This example describes all the volumes in the us-east-1d Availability Zone with failed io-enabled status.

https://ec2.amazonaws.com/?Action=DescribeVolumeStatus
&Filter.1.Name=availability-zone
&Filter.1.Value.1=us-east-1d
&Filter.2.Name=volume-status.details-name
&Filter.2.Value.1=io-enabled
&Filter.3.Name=volume-status.details-status
&Filter.3.Value.1=failed
&AUTHPARAMS