

# 采集 EFA 指标
<a name="CloudWatch-Agent-EFA"></a>

 您可借助 CloudWatch 代理，从已挂载 EFA 设备的 Linux 服务器采集 Elastic Fabric Adapter（EFA）指标。要对此进行设置，请在 CloudWatch 代理配置文件的 `metrics_collected` 部分中添加 `efa` 部分。有关更多信息，请参阅 [Linux 部分](CloudWatch-Agent-Configuration-File-Details.md#CloudWatch-Agent-Linux-section)。

**注意**  
所有 EFA 指标均以差值增量上报。代理会自动完成累计值到增量值的转换计算。

可以收集以下指标。


| 指标 | 说明 | 
| --- | --- | 
| `efa_tx_bytes` | EFA 设备发送字节数 | 
| `efa_rx_bytes` | EFA 设备接收字节数 | 
| `efa_tx_pkts` | EFA 设备发送数据包数量 | 
| `efa_rx_pkts` | EFA 设备接收数据包数量 | 
| `efa_rx_dropped` | EFA 设备丢弃的入站数据包数量 | 
| `efa_send_bytes` | EFA 发送操作传输字节数 | 
| `efa_send_wrs` | 已完成的发送工作请求数 | 
| `efa_recv_bytes` | EFA 接收操作接收字节数 | 
| `efa_recv_wrs` | 已完成的接收工作请求数 | 
| `efa_rdma_read_bytes` | RDMA 读操作传输字节数 | 
| `efa_rdma_read_resp_bytes` | RDMA 读响应接收字节数 | 
| `efa_rdma_read_wrs` | 已完成的 RDMA 读工作请求数 | 
| `efa_rdma_read_wr_err` | RDMA 读工作请求错误次数 | 
| `efa_rdma_write_bytes` | RDMA 写操作发送字节数 | 
| `efa_rdma_write_recv_bytes` | RDMA 写操作接收字节数 | 
| `efa_rdma_write_wrs` | 已完成的 RDMA 写工作请求数 | 
| `efa_rdma_write_wr_err` | RDMA 写工作请求错误次数 | 
| `efa_retrans_bytes` | 重传字节数 | 
| `efa_retrans_pkts` | 重传数据包数量 | 
| `efa_retrans_timeout_events` | 重传超时事件次数 | 
| `efa_impaired_remote_conn_events` | 远程连接异常事件次数 | 
| `efa_unresponsive_remote_events` | 远程端点无响应事件次数 | 

## Dimensions
<a name="CloudWatch-Agent-EFA-dimensions"></a>

默认情况下，所有 EFA 指标上报时均附带以下维度：
+ `device` – EFA 设备名称
+ `port` – EFA 端口编号
+ `eniId` – EFA NIC 对应的 ENI ID

若需额外附加 `InstanceId` 等自定义维度，可在代理配置文件的 `metrics` 部分中填写 `append_dimensions` 字段。

## 示例配置
<a name="CloudWatch-Agent-EFA-example"></a>

以下示例配置每 60 秒采集部分 EFA 指标，并为每条指标附加 `InstanceId` 维度。

```
{
  "metrics": {
    "append_dimensions": {
      "InstanceId": "${aws:InstanceId}"
    },
    "metrics_collected": {
      "efa": {
        "measurement": [
          "efa_tx_bytes",
          "efa_rx_bytes",
          "efa_tx_pkts",
          "efa_rx_pkts",
          "efa_rx_dropped",
          "efa_rdma_read_bytes",
          "efa_rdma_write_bytes"
        ],
        "metrics_collection_interval": 60
      }
    }
  }
}
```