APIs in Category: ses | 7-Mode API version 1.20

storage-shelf-bay-list-info storage-shelf-environment-list-info storage-shelf-get-shelf-info storage-shelf-list-info storage-shelf-set-led-state storage-shelf-update-fw

NetApp Manage ONTAP

storage-shelf-bay-list-info | [top]

> Returns information about storage shelf bays and ports for a selected number of shelves, or optionally all shelves connected to the storage controller.

> Input Name | Range | Type | Description
> channel-name |  | string optional | The adapter number or switch name and the port number (together, called the channel). If missing, then information for all shelves on all channels will be presented. If missing, then shelf-id input is not allowed. Examples: 8a, switch:5
> shelf-id | [0..99] | integer optional | shelf-id is the shelf number for which shelf data is requested. This input requires that channel-name input also be specified. If a channel-name and shelf-id are both specified then information for the specified shelf will be presented (a single shelf). If channel-name is specified, but shelf-id is missing, then information for all shelves on the channel will be presented. If channel-name is not specified then shelf-id is not supported and an error will be returned.
> Output Name | Range | Type | Description
> shelf-bay-list |  | shelf-bay-list-info[] | Each instance of shelf-list contains available bay information on a shelf.

> Errno | Description
> EINTERNALERROR |  |
> ECHANNELNOTFOUND |  |
> ESHELFNOTFOUND |  |
> EINVALIDINPUTERROR |  |

storage-shelf-environment-list-info | [top]

> Returns the environmental information for a selected number of shelves, or optionally all shelves connected to the storage controller.

> Input Name | Range | Type | Description
> channel-name |  | string optional | Get environment information for shelves on this channel. shelf-id parameter can be specified to request data on a single shelf. If a channel-name is not specified, then data on all shelves on all channels will be returned. If an invalid channel-name is specified, then error code ECHANNELNOTFOUND will be returned.
> shelf-id | [0..99] | integer optional | Get environment information for the specified shelf-id on the specified channel-name. This parameter requires channel-name parameter as well. If shelf-id is specified without channel-name then the error code EINVALIDINPUTERROR will be returned. If shelf-id is not specified and a channel-name is specified, then data for all shelves on the channel-name is returned. If an invalid shelf-id is specified, then error code ESHELFNOTFOUND will be returned.
> Output Name | Range | Type | Description
> shelf-environ-channel-list |  | shelf-environ-channel-info[] | List of channels and associated environment information on the shelves in the channel. Only on-line channels that have shelves attached will be reported.

> Errno | Description
> EINTERNALERROR |  |
> ECHANNELNOTFOUND |  |
> ESHELFNOTFOUND |  |
> EINVALIDINPUTERROR |  |

storage-shelf-get-shelf-info | [top]

> This returns information about an identified shelf. The information is the number of bays present (bay-count), and which shelf bays have drives (bay-list). Shelf bays are numbered from 0 to bay-count minus 1. Shelf bay 0 is always on the right when looking at the front of the shelf. Incidentally, the bay-list may be empty indicating the absence of any drives. However, there are some shelf designs which require a disk drive in bay 0 or 1 for any SES functionality to operate (e.g., DS14 and DS14-Mk2-FC). In these cases, shelves without drives in bay 0 or 1 will not be listed.

> Input Name | Range | Type | Description
> channel-name |  | string | The adapter number or switch name and theport number (together, called the channel). Examples are 8a and switch:5
> shelf-id |  | integer | The shelf id specifies the shelf for which a list of disk bays is desired. Range : [0..2^24-1]
> Output Name | Range | Type | Description
> bay-count |  | integer | Disk bays are the slots into which disks are placed. The bays are numbered from 0 to bay-count-1. Bay 0 is the right most bay (when looking at the front of the shelf) and bay bay-count-1 is left most. These bay numbers can be used by other commands, including storage-shelf-set-led-state. Range : [0..255]
> bay-list |  | bay-info[] | A list of shelf-bay numbers which have disk drives. The bay-list field is not optional, but it may contain zero bay-info elements.
> firmware-rev-A |  | string optional | Shelf Module A firmware revision.
> firmware-rev-B |  | string optional | Shelf Module B firmware revision.
> firmware-revision |  | string | Shelf firmware revision.
> shelf-type |  | string optional | Shelf module type. Some examples are: "ESH2", and "AT-FCX".

> Errno | Description
> EINTERNALERROR |  |
> EAPIMISSINGARGUMENT |  |
> EINVALIDINPUTERROR |  |

storage-shelf-list-info | [top]

> This interface returns information about one or more shelves.

> Input Name | Range | Type | Description
> channel-name |  | string optional | The adapter number or switch name and the port number (together, called the channel). If missing, then information for all shelves on all channels will be presented. If missing, then shelf-id input is not allowed. Examples are 8a and switch:5
> shelf-id | [0..99] | integer optional | shelf-id is the shelf number for which shelf data is requested. This input requires that channel-name input also be specified. If a channel-name and shelf-id are both specified then information for the specified shelf will be presented (a single shelf). If channel-name is specified, but shelf-id is missing, then information for all shelves on the channel will be presented. If channel-name is not specified then shelf-id is not supported. In such case information for all shelves on all channels will be presented.
> Output Name | Range | Type | Description
> shelf-list |  | shelf-info[] | Each instance of shelf-list contains all available information on a shelf hub. This can be empty if there are no shelves attached or if shelves do not support hubs. Also a partner shelf can be reported.

> Errno | Description
> EINTERNALERROR |  |
> EAPIMISSINGARGUMENT |  |
> EINVALIDINPUTERROR |  |

storage-shelf-set-led-state | [top]

> Set or clear the LED for a disk, shelf of disks or loop of shelves. LEDs to affect can be specified as: {channel-name}, {channel-name, shelf-id}, {channel-name, shelf-id, shelf-bay}, {channel-name, shelf-id, shelf-bay}, {channel-name, shelf-id, shelf-bay, lun}.

> Input Name | Range | Type | Description
> action |  | string required | This specifies the action to apply. Possible values are: on, and off. on: Turn the LED(s) on indefinitely. off: Turn the LED(s) off.
> channel-name |  | string | The channel to which the shelf or drive LED to be affected is connected. A channel-name is the adapter number or switch name and the port number (together, called the channel). Examples are 8a and switch:5.
> duration |  | integer optional | This parameter allows the caller to specify the duration (in seconds) that the action will be applied. Note that the action 'on' is indefinite, while 'test' uses duration. 'blink' also uses duration.
> identify |  | boolean optional | This parameter allows the caller to specify the identify LED. The default is for the command to affect the fault LED. Not all disks have identify LEDs. In that case, the identify option is ignored and the fault LED is affected.
> lun |  | integer optional | Some targets have a logical unit number. In that case, the lun will be required to uniquely specify the LED to affect. Range : [0..255]
> shelf-bay |  | integer optional | If present, the shelf-bay indicates the specific drive where the LED affected resides. If shelf-id is supplied but shelf-bay is not, then the LEDs for all drives in the shelf will be affected. Range : [0..255]
> shelf-id |  | integer | If present, the shelf-id indicates which shelf has the drive or drives where the LEDs to affect reside. Range : [0..2^24-1]

> Errno | Description
> EINTERNALERROR |  |
> EDISKNOTFOUND |  |
> EAPIMISSINGARGUMENT |  |
> EINVALIDINPUTERROR |  |

storage-shelf-update-fw | [top]

> Start shelf firmware download process to update firmware on disk shelves. This operation is asynchronous, and therefore returns no errors that might occur during the download process. This operation will only update firmware on shelves that do not have the latest firmware revision. The firmware revision on the shelves can be monitored via the storage-shelf-get-shelf-info API. NOT IMPLEMENTED YET.

> Input Name | Range | Type | Description
> channel-name |  | string optional | If present, will only update firmware on all shelves (or a single shlef depending on shelf-id) on the given channel. If not present, then all shelves on all channels are updated. Example: To update firmware on 2a.shelf1, channel should be 2a and shelf should be 1.
> shelf-id |  | string optional | If present, will only update firmware on the given shelf on specified channel. If not present, and a channel-name is specified, then all shelves on the channel will be updated. Example: To update firmware on 2a.shelf1, channel should be 2a and shelf should be 1.

> Errno | Description
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |

Element definition: bay-info | [top]

> A list of shelf bay numbers which have disks.

> Name | Range | Type | Description
> lun |  | integer optional | The logical unit number within the target. This field will be present in some storage configurations. In some cases, devices with a logical unit number will have LEDs that can be affected. Range : [0..255]
> shelf-bay |  | integer | A shelf-bay number indicates the presence of a drive in that bay. Shelf bays are numbered starting at 0 which is the right most drive bay in the shelf when viewing the shelf from the front. Range: [0..255]

Element definition: shelf-bay-list-info | [top]

> Bay and port information on a shelf module.

> Name | Range | Type | Description
> channel-name |  | string | The channel the shelf (hub) is attached to. Example: 0c.
> module |  | string | The shelf module attachment. Possible values: "a", "b".
> port-list |  | shelf-bay-port-info[] optional | Shelf bay specific information.
> shelf-id | [0..99] | integer | The shelf id switch setting. This is the shelf id switch that is used to uniquely identify the shelf on the filer node.
> shelf-name |  | string | Shelf name that the hub is attached to. This can also be considered as hub name. Example: 0c.shelf1.
> shelf-state |  | string | Current state of the shelf. Possible values are: "no_status", "init_required", "online", "offline", "missing", "failed", "unknown".
> shelf-type |  | string | Shelf module type. Possible values: "edm", "vem", "esp", "lrc", "esh", "esh2", "esh4", "eshfx", "eshtx", "emu", "efh", "at-fc", "at-fc2", "at-fcx", "at-fcx2", "sas", "esas", "sas-fc", "iom3", "iom6".
> shelf-uid |  | string | Shelf unique identifier that distinguishes it from other shelves manufactured. Example: 50:05:0c:c0:02:10:64:26.

Element definition: shelf-environ-channel-info | [top]

> Shelf environment information.

> Name | Range | Type | Description
> channel-name |  | string | Storage controller channel the shelf is connected to.
> is-channel-monitor-enabled |  | boolean | Indicates whether monitoring is enabled on this channel.
> is-shelf-channel-failure |  | boolean | Indicates whether any shelves on this channel have experienced a failure.
> shelf-environ-channel-address |  | shelf-environ-channel-address-map[] optional | A list of all the shelf assigned addresses assigned on this channel.
> shelf-environ-shelf-list |  | shelf-environ-shelf-info[] | List of shelves in the channel and associated environment information.
> shelves-present | [0-99] | integer | Number of shelves present on this channel.

Element definition: shelf-info | [top]

> Describes a shelf.

> Name | Range | Type | Description
> channel-name |  | string | The channel/port-number the shelf (hub) is attached to. If it is the partner node that is being reported, the value will be shown as "PARTNER". Examples: "0c" or "PARTNER".
> firmware-rev-A |  | string optional | Shelf Module A firmware revision. When the channel-name field is "PARTNER" this field will not be present.
> firmware-rev-B |  | string optional | Shelf Module B firmware revision. When the channel-name field is "PARTNER" this field will not be present.
> module |  | string | The shelf module attachment. Possible values are: "a", "b".
> module-state |  | string optional | Current state of the IO module attached to the shelf port (if any). Possible values are: "no_status", "ok", "missing", "transport error", "critical", "unreachable", "unknown".
> phy-expander-list |  | phy-expander-info[] optional | Each instance of phy-expander-list contains PHY (physical layer) expander information about each port. This applies to direct attached shelves with SAS modules only.
> port-hub-list |  | port-hub-info[] optional | Each instance of port-hub-list contains hub information about each port. This applies to shelves with ESH modules only.
> shelf-bay-info |  | shelf-bay-info optional | Detailed information on populated shelf bays. When the channel-name field is "PARTNER" this field will not be present.
> shelf-id | [0..99] | integer | The shelf id switch setting. This is the shelf id switch that is used to uniquely identify the shelf on the filer node.
> shelf-name |  | string | Shelf name that the hub is attached to. This can also be considered as hub name. Example: 0c.shelf1.
> shelf-state |  | string | Current state of the shelf. Possible values are: "no status", "init required", "online", "offline", "missing", "unknown".
> shelf-type |  | string | Shelf module type. Some examples are: "esh2", and "at-fcx".
> shelf-uid |  | string | Similar to serial number, this is the shelf unique identifier that distinguishes it from any other shelf manufactured. Example: 50:05:0c:c0:02:10:64:26.
> termination-switch |  | string optional | State of the termination switch on the shelf. Possible values are: "on", "off" and "n/a".

Element definition: phy-expander-info | [top]

> Expander PHY (physical layer) information of an individual port.

> Name | Range | Type | Description
> bay-number | [0..99] | integer optional | Bay port number. Unique bay-number for each type of phy-type. Present when multiple phy's for a phy-type exist in the shelf, such as phy-type "disk", "P0", "P1".
> crc-error-count | [0..2^32-1] | integer | This field presents the number of CRC errors that have been seen in any address or data frames. The value will be the count kept by the expander since either power-on or since the counts have been reset.
> dongle-data |  | dongle-info optional | dongle information, if there's a dongle installed. Will be missing if not supported or not available. Present for drive phy only.
> invalid-dword-count | [0..2^32-1] | integer | The number of invalid double words seen outside of the phy reset sequence. The value will be the count kept by the expander since either power-on or since the counts have been reset.
> link-rate |  | string optional | If port-state is "ok", then this is a floating number, representing SAS-1.1 defined negotiated link rate value for the phy in Gb/s. Example: 3.0. For all other port states, this field will not be available.
> loss-dword-count | [0..2^32-1] | integer | This field presents the number of times the phy has lost double-word synchronization and restarted the link reset sequence of the phy reset sequence. The value will be the count kept by the expander since either power-on or since the counts have been reset.
> pathway-timeout | [0..2^32-1] | integer | This field the partial pathway timeout value, in microseconds, being used for the phy.
> phy-change-count | [0..2^32-1] | integer | This field the number of times this logical phy has changed state. This count increments when the logical phy transitions from disabled to enabled. This count also increments when the logical phys transitions from enabled to disabled. The value will be the count kept by the expander since either power-on or since the counts have been reset.
> phy-number | [0..99] | integer optional | PHY number. Unique phy-number in the shelf, regardless of phy-type.
> phy-power-status |  | string optional | Current power status. Possible values: "on", "off". Will be missing if not supported or not available. Present for drive phy only.
> phy-reset-problem | [0..2^32-1] | integer | This field presents the number of times the phy reset sequence has failed. The value will be the count kept by the expander since either power-on or since the counts have been reset.
> phy-state |  | string optional | State of the phy. Possible values: "rate_unknown", "disabled", "speed_negotiation_failed", "sata_oob_failed", "1.5_gbps", "3.0_gbps", "6.0_gbps", "state_unknown",
> phy-type |  | string optional | PHY type. Possible values: "disk", "p0", "p1", "v255", "v99".
> port-id |  | string | Possible values are: port id in range [0..19] or "in0", "in1", "in2", "in3", "out0", "out1", "out2", "out3", representing one of the input or output ports.
> port-state |  | string | Current port state. Possible values are: "ok", "unkwn_lnk", "unused", "unkwn", "empty", "dis_man", "dis_smp", "dis_loswd", "dis_dispa", "dis_invwd", "dis_reset", "dis_phchg", "dis_mir", "dis_crc", "dis_clk", "dis_resv", "dis_unusd", "unknown", "no_signal",
> power-cycle-count | [0..255] | integer optional | This field presents the number of times the driver has been power cycled via this phy. Will be missing if not supported or not available. Present for drive phy only.
> release-count | [0..255] | integer optional | This field presents the number of times the driver has been released (unreserved) via this phy. Will be missing if not supported or not available. Present for drive phy only.
> reserve-count | [0..255] | integer optional | This field presents the number of times the driver has been reserved via this phy. Will be missing if not supported or not available. Present for drive phy only.
> running-disparity-count | [0..2^32-1] | integer | The number of Dwords with a running disparity error seen outside the phy reset sequence. The value will be the count kept by the expander since either power-on or since the counts have been reset.

Element definition: port-hub-info | [top]

> Hub information for an individual port.

> Name | Range | Type | Description
> clock-delta | [-2^31..2^31-1] | integer | The clock delta between this port in respect to ESH clock and other ports in the ESH.
> disk-bay | [0..23] | integer optional | If port-id is "in", "out", "aux1" or "aux2" then this is not populated, otherwise, it represents the shelf bay that the disk resides in.
> insert-count | [0..2^32-1] | integer | Number of times this port has been inserted into the loop.
> invalid-crc-count | [0..2^32-1] | integer | Number of times this port has seen a CRC error.
> invalid-word-count | [0..2^32-1] | integer | Number of times this port has seen invalid FC-AL words transmitted.
> lip-count | [0..2^32-1] | integer optional | Lip count, number of times loop initialization primitive has been generated. This field is not available on all shelf modules.
> loop-up-count | [0..2^32-1] | integer | Number of times this port has seen the loop come up/transition to up.
> port-id |  | string | Possible values are: port number in the range of 0 to 255 or "in", "out", "aux1" or "aux2" representing input, output or one of auxiliary ports. This is the same as FCAL ALPA for the port.
> port-state |  | string | Current port state. Possible values are: "ok", "empty", "byp_init", "byp_gen", "byp_man", "byp_xmit", "byp_lipf8", "byp_dto", "byp_rlos", "byp_clos", "byp_tbi", "byp_rprt", "byp_stall", "byp_wrd", "byp_crc", "byp_lip", "byp_osc", "byp_clk", "byp_mir", "byp_lipf7", "byp_bzr", "byp_self", "byp_flt", "byp_pwr", "byp_pcycl", "warn_lip", "warn_wrdb", "warn_wrd", "warn_crc", "warn_clk", "unknown", "term-err", "term", "autoterm".
> stall-count | [0..2^32-1] | integer | Number of times this port exceeded the OPN/CLS maximum threshold.
> utilization-percentage | [0..100] | integer | Relative utilization of this port vs. other ports in the ESH.

Element definition: shelf-bay-info | [top]

> Shelf bay information.

> Name | Range | Type | Description
> bay-count | [0..255] | integer optional | Disk bays are the slots into which disks are placed. The bays are numbered from 0 to bay-count-1. Bay 0 is the right most bay (when looking at the front of the shelf) and bay bay-count-1 is left most. These bay numbers can be used by other commands, including storage-shelf-set-led-state.
> bay-list |  | bay-info[] | A list of shelf-bay numbers which have disk drives. The bay-list field is not optional, but it may contain zero bay-info elements.

Element definition: shelf-bay-port-info | [top]

> Shelf bay port specific information.

> Name | Range | Type | Description
> bay-no | [0..23] | integer optional | Disk bay number or port number, if applicable. In some instances bay numbers do apply and will not be present. An example is an ESH shelf with a single "in" and a single "out" port.
> disk-name |  | string optional | if port-designator is "disk_bay" and there is a disk installed in the bay, then this will be the disk name. Otherwise the field will be missing.
> disk-uid |  | string optional | if port-designator is "disk_bay" and there is a disk installed in the bay, then this will be UID of the disk. Otherwise the field will be missing.
> port-designator |  | string optional | Shelf bay port designator. Possible values: "in", "out", "aux", "sqr", "cir", "sil", "hi_lo", "a_to_b", "b_to_a", "disk_bay".
> port-state |  | string optional | Current port state. Possible values are: "ok", "empty", "unkwn_lnk", "no_signal", "unused", "unkwn", "unknown", "dis_man", "dis_unusd", "dis_smp", "dis_loswd", "dis_dispa", "dis_invwd", "dis_reset", "dis_phchg", "dis_mir", "dis_crc", "dis_clk", "byp_init", "byp_gen", "byp_man", "byp_xmit", "byp_lipf8", "byp_dto", "byp_rlos", "byp_clos", "byp_tbi", "byp_rprt", "byp_stall", "byp_wrd", "byp_crc", "byp_lip", "byp_osc", "byp_clk", "byp_mir", "byp_lipf7", "byp_bzr", "byp_self", "byp_flt", "byp_pwr", "byp_pcycl", "warn_lip", "warn_wrdb", "warn_wrd", "warn_crc", "warn_clk", "term-err", "term", "autoterm".

Element definition: shelf-environ-channel-address-map | [top]

> A list of all the shelf assigned addresses assigned on this channel.

> Name | Range | Type | Description
> address-map |  | string | A comma separated list of addresses assigned on this channel by the shelf specified in shelf-no output above.
> shelf-id | [0..255] | integer | Shelf number for presented address map.

Element definition: shelf-environ-shelf-info | [top]

> Shelf environment information.

> Name | Range | Type | Description
> alternate-control-path-information |  | alternate-control-path-info[] optional | Available information on the alternate control path (ACP) to the shelf.
> ariodata-specific-info |  | ariodata-specific-info optional | Vendor specific enclosure system information for Ariodata shelves.
> attached-shelf-bay-error-list |  | string optional | A list of bays numbers in this shelf that have disk devices with errors. All bays with error devices will be listed. This is a comma separated list from high to low. Example: "13, 10, 4, 1".
> attached-shelf-bay-list |  | string | A list of bays numbers in this shelf that have disk devices installed. All bays with disks installed will be listed. This is a comma separated list from high to low. Example: "13, 11, 10, 4, 3, 2, 1".
> connector-information |  | connector-info[] optional | Cable and connector information if available and supported by the hardware. Will not be present if the feature is not supported in the hardware.
> control-writes-attempted | [0..2^32-1] | integer | Number of times attempted to write shelf controls.
> control-writes-failed | [0..2^32-1] | integer | Number of times failed to write shelf controls.
> controller-device-path |  | string | Device path to the shelf controller. Possible values: "embedded_access", "local_access", "unknown", "not_available".
> controller-device-path-port |  | string optional | If controller-device-path is "local_access", then this presents the local access port number.
> cooling-element-list |  | cooling-element-info[] optional | Information on installed cooling elements in the shelf.
> current-sensor-list |  | current-sensor-info[] optional | Information on current sensors in the shelf.
> enclosure-information |  | enclosure-info optional | Information on the enclosure type. This information will be presented for ESH and SAS shelves only.
> es-electronics-list |  | es-electronics-info[] optional | Information on the installed enclosure services electronics.
> eurologic-specific-info |  | eurologic-specific-info optional | Vendor specific enclosure system information for Eurologic shelves.
> is-shelf-monitor-enabled |  | boolean | Indicates whether monitoring is enabled on this shelf.
> power-control-failure-state |  | string optional | Extension to the power-control-status to provide more information in case of shelf failures. Possible values: "dual_esh4_modules_not_present", "power_control_fault_detected", "incompatible_power_control_implementation", "power_control_function_not_available", "backplane_cpld_fault_detected".
> power-control-status |  | string optional | Power control element status. This is generalization of the ESH4 shelf power status. Currently available on ESH 4 shelves only. Possible values: "ok", "not_supported", "critical", "non_critical", "unknown".
> power-supply-list |  | power-supply-info[] optional | Information on installed power supplies in the shelf.
> processor-complex-information |  | processor-complex-info[] optional | Available information on the processor complex modules (PCMs) in the shelf.
> sas-specific-info |  | sas-specific-info optional | Vendor specific enclosure system information for SAS shelves.
> ses-generic-info |  | ses-generic-info | Generic SES (scsi enclosure services) information.
> shelf-id | [0-99] | integer | Shelf number.
> shelf-status |  | string | Current shelf status. Possible values: "unrecoverable", "critical", "non_critical", "informational", "normal".
> shelf-type |  | string | Shelf type. Possible values: "edm", "vem", "esp", "lrc", "lrc2", "esh", "esh2", "esh4", "eshfx", "emu", "efh", "eshtx", "sas", "esas", "sas_fc", "iom3", "at_fcx", "at_fcx2", "iom6", "iom6e".
> status-reads-attempted | [0..2^32-1] | integer | Number of times attempted to read shelf status.
> status-reads-failed | [0..2^32-1] | integer | Number of times failed to read shelf status.
> temp-sensor-list |  | temp-sensor-info[] optional | Information on installed temperature sensors in the shelf.
> voltage-sensor-list |  | voltage-sensor-info[] optional | Information on voltage sensors in the shelf.
> xyratex-specific-info |  | xyratex-specific-info optional | Vendor specific enclosure system information for Xyratex shelves.

Element definition: alternate-control-path-info | [top]

> Available information on the alternate control path (ACP) to the shelf.

> Name | Range | Type | Description
> acp-element-no | [1..2] | integer | ACP element number
> controller-acp-connection-status |  | string optional | Storage controller's ACP connection status. Possible values: "no_connectivity", "partial_connectivity", "full_connectivity", "additional_connectivity", "unknown", "not_available", "not_applicable".
> controller-acp-domain |  | string optional | This fields presents the ACP's domain on the storage controller. Example: 255.255.255.0
> controller-acp-ethernet-port |  | string optional | This fields presents the ACP's ethernet port on the storage controller. Example: e0a, e4d.
> controller-acp-ip-address |  | string optional | This fields presents the ACP's IP address on the storage controller. Example: 172.168.4.4
> controller-acp-netmask |  | string optional | This fields presents the ACP's netmask on the storage controller. Example: 172.168.4.1
> is-acp-element-error |  | boolean optional | Indicates if there has been a failure in the ACP block. Will not be present if an ACP element is not installed.
> is-acp-element-not-installed |  | boolean optional | Indicates if ACP element has been installed. Will be present only if the element is not installed, in which case no further information will be provided.
> is-controller-acp-active |  | boolean optional | Indicates whether the ACP function is active on the storage controller. Inactive ACP unually means there is configuration or connection error that needs to be resolved.
> is-controller-acp-enabled |  | boolean optional | Indicates if ACP functionality is enabled in the storage controller. If the ACP funtion is not enalbed the following fields will not be presented.
> module-firmware-revision |  | string optional | Firmware version of the ACP controller. This field will not be present if the value is unknown or not available, or if an ACP element is not installed.
> module-ip-address |  | string optional | IP address that is used by this ACP shelf module. This field will not be present if the IP address is unknown or not available, or if an ACP element is not installed.
> module-mac-address |  | string optional | MAC address that is used by this module's ACPP. This field will not be present if the MAC address is unknown or not available, or if an ACP element is not installed.
> module-name |  | string optional | Shelf module for this ACPP. Possible Values: "A", "B" This field will not be present if it is unknown or not available, or if an ACP element is not installed.
> module-reset-count | [0..2^32-1] | integer optional | Number of times the corresponding shelf I/O module has been reset using this ACPP. This field will not be present if it is unknown or not available, or if an ACP element is not installed.
> module-status |  | string optional | ACP status of this shelf module. This field will not be present if it is unknown or not available, or if an ACP element is not installed. Possible values: "active", "inactive_not_ready", "inactive_waiting_for_inband_info", "inactive_no_inband_connectivity", "inactive_not_responding", "inactive_updating_firmware", "inactive_initializing", "inactive_unknown".
> module-status-time |  | string optional | Time of last contact with the ACP controller. This is only valid if the value of module-status field is inactive_not_responding.

Element definition: ariodata-specific-info | [top]

> Vendor specific enclosure system information for Ariodata shelf.

> Name | Range | Type | Description
> ariodata-serial-no |  | string | Serial number for Ariodata shelf.

Element definition: bay-info | [top]

> A list of shelf bay numbers which have disks.

> Name | Range | Type | Description
> lun |  | integer optional | The logical unit number within the target. This field will be present in some storage configurations. In some cases, devices with a logical unit number will have LEDs that can be affected. Range : [0..255]
> shelf-bay |  | integer | A shelf-bay number indicates the presence of a drive in that bay. Shelf bays are numbered starting at 0 which is the right most drive bay in the shelf when viewing the shelf from the front. Range: [0..255]

Element definition: connector-info | [top]

> Information on cables and/or connectors connected to the shelf

> Name | Range | Type | Description
> sas-connector-list |  | sas-connector-info[] optional | Information on SAS connectors & cables.

Element definition: cooling-element-info | [top]

> Information on individual cooling elements (fans).

> Name | Range | Type | Description
> cooling-element-is-error |  | boolean optional | Indicated whether cooling elements has failed or reported any errors. Will not be present if cooling element is not installed.
> cooling-element-is-not-installed |  | boolean optional | Indicates the cooling elements is not installed. This will only be present if the element is missing, in such case no further data for this element will be presented.
> cooling-element-number | [0..255] | integer | Cooling element number.
> rpm | [0..32766] | integer optional | Current RPM (revolutions per minutes) of the fan. Will not be present if RPM is not available at the time API is executed or if RPM detection hardware is not supported by the shelf or if cooling element is not installed.

Element definition: current-sensor-info | [top]

> Presents the electrical current sensor information, if implemented on the system.

> Name | Range | Type | Description
> current-sensor-no | [1..20] | integer | Current sensor number.
> is-sensor-error |  | boolean optional | Will indicate whether the sensor has encountered an error.
> is-sensor-not-installed |  | boolean optional | Indicates the current sensor elements is not installed. This will only be present if the element is missing, in such case no further data for this element will be presented.
> sensor-condition |  | string optional | A Text string describing whether the sensor-reading field is within normal operating range. This field is present only if sensor-reading field is also present. Possible values are: "overcurrent_failure", "overcurrent_warning", "normal_operating_range".
> sensor-reading |  | string optional | Current reading of the sensor. This field will be not be present if unable to read the sensor value properly.

Element definition: dongle-info | [top]

> dongle information

> Name | Range | Type | Description
> disable-reason |  | string optional | If phy-state is "disabled", then this will give explanation as to the reason. Possible values: "manual", "no_drive", "brst_los", "los", "brst_rdd", "rdd", "brst_idd", "idd", "brst_prp", "prp", "brst_pcd", "pcd", "brst_crc", "crc", "osc", "mir", "rsrv", "man_smp", "clk_flt", "unknown".
> dongle-firmware-revision |  | string optional | Dongle firmware revision. Will be missing if not supported or not available.
> dongle-type |  | string optional | Dongle type. Possible values: "ss1300b", "sas", "sps3g", Will be missing if not supported or not available.

Element definition: enclosure-info | [top]

> Information on the enclosure type. This information will be presented for ESH and SAS shelves only.

> Name | Range | Type | Description
> enclosure-type |  | string | Enclosure type. Possible values: "sas_expander_module", "embedded_switching_hub".
> module-list |  | module-info[] | Information on the enclosure modules.

Element definition: es-electronics-info | [top]

> Information on the installed enclosure services (ES) electronics.

> Name | Range | Type | Description
> es-electronics-element-no | [0..255] | integer | Enclosure services electronics element number.
> es-electronics-is-error |  | boolean optional | indicates whether this enclosure services electronics has reported any errors. Will not be present if the element is not installed.
> es-electronics-is-not-installed |  | string optional | Indicates this enclosure services electronics is not installed. This will only be presented when the element is missing, no further data for this element will be presented.
> es-electronics-is-reporting-element |  | boolean optional | Indicated whether this is the element reporting. Even though there might be more than one element installed, only will be reporting at any time. Will not be present if the element is not installed.
> es-electronics-serial-no |  | string optional | Serial number for the enclosure services electronics. Will not be present if the element is not installed.
> es-part-number |  | string optional | Part number for the ES electronics. Field will be missing if the information is not available or if the element is not installed.
> es-revision |  | string optional | CPLD revision of the ES electronics, if applicable. This field will not be present if the information is not available, not implemented, or if the element is not installed.
> es-swap-count | [0..255] | integer optional | Number of times, since last boot, that this ES electronics elements has been swapped. Will not be present if the element is not installed.
> esh-list |  | esh-info[] optional | Information on attached embedded switched hub, if any.

Element definition: eurologic-specific-info | [top]

> Vendor specific enclosure system information for Eurologic shelf.

> Name | Range | Type | Description
> eurologic-application-version |  | string | Application version for Eurologic shelf.
> eurologic-backplane-byte |  | string | Backplane byte for Eurologic shelf.
> eurologic-backplane-function |  | string | Backplane function for Eurologic shelf.
> eurologic-backplane-id |  | string | Backplane identifier for Eurologic shelf.
> eurologic-cabinet-id |  | string | Cabinet id for the Eurologic shelf.
> eurologic-kernel-version |  | string | Kernel version for Eurologic shelf.
> eurologic-serial-no |  | string optional | Serial number for the Eurologic shelf.

Element definition: power-supply-info | [top]

> Power supply information

> Name | Range | Type | Description
> is-auto-power-reset-enabled |  | boolean optional | Indicates whether the auto power reset of the supply is enabled. This field will not be present if the power supply is missing.
> is-power-reset-capable |  | boolean optional | Indicates whether the power supply can be reset via software control. This field will not be present if power supply is missing.
> power-supply-element-number | [0..255] | integer | Element number the power supply.
> power-supply-firmware-revision |  | string optional | Power supply firmware revision. This field will not be present if firmware rev is unavailable or feature not implemented, or if the power supply is missing.
> power-supply-is-error |  | boolean optional | Indicates whether the power supply has reported any errors. This field will not be present if the power supply is missing.
> power-supply-is-not-installed |  | boolean optional | Indicates the power supply for this element is not installed. This will only be presented if the power supply is missing, in which case no further information for the element will be available.
> power-supply-part-no |  | string optional | Power supply part number. The field will not be present if part number is unavailable or not implemented or if the power supply is missing.
> power-supply-serial-no |  | string optional | Power supply serial number. This field will not be present if the power supply is missing.
> power-supply-swap-count | [0..255] | integer optional | Number of power supply swap counts since boot. This field will not be present if the power supply is missing.
> power-supply-type |  | string optional | Power supply type. This field will not be present if power supply type is unavailable or feature is not implemented, or if the power supply is missing.

Element definition: processor-complex-info | [top]

> Available information on the processor complex modules (PCMs) in the shelf.

> Name | Range | Type | Description
> is-pcm-element-error |  | boolean optional | Indicates if there has been a failure in the PCM. Will not be present if a PCM element is not installed.
> is-pcm-element-not-installed |  | boolean optional | Indicates if PCM element has been installed. Will be present only if the element is not installed, in which case no further information will be provided.
> pcm-element-no | [1..2] | integer | PCM element number

Element definition: sas-specific-info | [top]

> Vendor specific enclosure system information for SAS shelf.

> Name | Range | Type | Description
> serial-no |  | string | Shelf backplane serial number.

Element definition: ses-generic-info | [top]

> Generic SES (SCSI enclosure services) information.

> Name | Range | Type | Description
> ses-chassis-part-number |  | string optional | Chassis part number. The field will not be present if the part number is unavailable or not implemented.
> ses-config-access |  | string optional | The method shelf configuration was obtained. Possible values: "via_embedded_ses", "via_scsi_from_shelf", "via_loop_from_shelf", "remote_access_via_controller", "not_available".
> ses-config-access-controller-name |  | string optional | If the value of ses-config-access field is "remote_access_via_controller" then this field will return the name of storage controller the configuration was obtained from. This field will not be present if storage controller name is not available or if the value of ses-config-access field is not "remote_access_via_controller".
> ses-config-access-shelf-id |  | string optional | If ses-config-access is either "via_scsi_from_shelf" or "via_loop_from_shelf" then this would be the shelf id of the device the configuration was obtained from.
> ses-config-access-source-id |  | integer optional | If ses-config-access is either "via_scsi_from_shelf" or "via_loop_from_shelf" then this would be the SCSI or loop id of the device that the configuration was obtained from.
> ses-contact-state |  | string | Enclosure contact state. Possible values are: "active", "initializing", "transitioning", "inactive", "reconfiguring", "non_existent".
> ses-logical-id |  | string | Enclosure logical identifier.
> ses-product-id |  | string optional | Enclosure product identifier. Not available on all shelf types.
> ses-product-revision |  | string | Enclosure product revision.
> ses-vendor-id |  | string | Enclosure vendor identifier.

Element definition: temp-sensor-info | [top]

> information on the temperature sensors installed in the shelf.

> Name | Range | Type | Description
> temp-sensor-current-condition |  | string optional | Current temperature condition for this sensor. One of: "under_temperature_warning", "under_temperature_failure", "over_temperature_warning", "over_temperature_failure", "normal_temperature_range".
> temp-sensor-current-temperature | [0..255] | integer optional | Current temperature reading in degrees Celsius.
> temp-sensor-element-no | [0..255] | integer | Element number for the temperature sensor.
> temp-sensor-hi-critical | [0..255] | integer | High critical temperature in degree Celsius.
> temp-sensor-hi-warning | [0..255] | integer | High warning temperature in degree Celsius.
> temp-sensor-is-ambient |  | boolean optional | Indicates whether the temp-sensor-current-temp is the ambient temperature.
> temp-sensor-is-error |  | boolean optional | Indicates whether the sensor has indicated an error in temperature.
> temp-sensor-is-not-installed |  | string optional | Indicates the sensor for this element is not installed. This will only be presented if the sensor is missing, and no further data for this sensor will be presented.
> temp-sensor-low-critical | [0..255] | integer | Low critical temperature in degree Celsius.
> temp-sensor-low-warning | [0..255] | integer | Low warning temperature in degree Celsius.

Element definition: voltage-sensor-info | [top]

> Presents the voltage sensor information, if implemented on the system.

> Name | Range | Type | Description
> is-sensor-error |  | boolean optional | Indicates whether the sensor has encountered an error.
> is-sensor-not-installed |  | boolean optional | Indicates the voltage sensor elements is not installed. This will only be present if the element is missing, in such case no further data for this element will be presented.
> sensor-condition |  | string optional | A Text string describing whether the sensor-reading field is within normal operating range. This field is present only if sensor-reading field is also present. Possible values are: "overvoltage_failure", "overvoltage_warning", "undervoltage_warning", "undervoltage_failure", "normal_operating_range".
> sensor-reading |  | string optional | Voltage reading of the sensor. This field will be not be present if unable to read the sensor value properly.
> voltage-sensor-no | [1..20] | integer | Voltage sensor number.

Element definition: xyratex-specific-info | [top]

> Vendor specific enclosure system information for Xyratex shelf.

> Name | Range | Type | Description
> xyratex-option-setting |  | string | Option setting for the Xyratex shelf.
> xyratex-serial-no |  | string | serial number for Xyratex shelf.

Element definition: esh-info | [top]

> Information on individual ESH modules in the shelf.

> Name | Range | Type | Description
> esh-element-no | [0..255] | integer | ESH element number of installed ESH module
> esh-is-error |  | string | Indicates whether the ESH module has reported any errors.

Element definition: module-info | [top]

> Shelf enclosure module info.

> Name | Range | Type | Description
> is-module-error |  | boolean | Indicated whether this module has encountered an error.
> is-sas-expander-master-module |  | boolean optional | When the value of enclosure-type field of enclosure-type-info is sas-expander-module, then this field indicates whether this module is the SAS expander master module. This field will only be present for sas-expander-module values.
> module-number | [0..1] | integer | shelf module number.

Element definition: sas-connector-info | [top]

> Detailed information on SAS cables and connectors connected to the shelf. Only information on the connectors with cables attached will be presented.

> Name | Range | Type | Description
> cable-end-identifier |  | string optional | Each cable has two ends. This field shows which end of the cable is connected to the shelf. This field will not be present if the information is not available or accessible, or if a cable is not connected at this connector. Possible values: "end_0", "end_1".
> cable-length |  | string optional | Cable length. This field will not be present if the information is not available or accessible, or if a cable is not connected at this connector.
> cable-manufacturer |  | string optional | Manufacturer of the cable. Will not be present if a cable is not connected at this connector.
> cable-part-no |  | string optional | Part number of the cable as assigned by the cable manufacturer. This field will not be present if the information is not available, or if a cable is not connected at this connector.
> cable-serial-no |  | string optional | Serial number of the cable as assigned by the cable manufacturer. This field will not be present if the information is not available, or if a cable is not connected at this connector.
> cable-technology |  | string optional | Cable technology. This field will not be present if the information is not available or accessible, or if a cable is not connected at this connector. Possible values: "cupper", "optical".
> cable-type |  | string optional | Type of the cable being used. This field will not be present if the information is not available or accessible, or if a cable is not connected at this connector. Possible values: "qsfp".
> connector-designator |  | string optional | Connector desiagnator. "sqr" - The port is marked with a square on the shelf connector panel, "cir" - The port is marked with a circle on the shelf connector panel. Will be missing if unknown or not available.
> connector-no | [0..4] | integer | Connector number.
> is-cable-connected |  | boolean | Indicates whether a cable is connected at this connector location. No further information will be provided if a cable is not connected at this connector location. Note that a cable connection does not necessarily mean that the shelf is connected to a storage cointroller. This will also depend on the other end of the cable.
> is-connector-error |  | boolean optional | Indicates whether the connector element has encountered an error.
> shelf-module |  | string optional | Shelf module for this connector "a" - Presenting data for shelf module A. "b" - Presenting data for shelf module B.
> swap-count | [0..255] | integer optional | Number of times, since last boot, a cable has been inserted into this connector