# 连接器状态异常告警处理指南

连接器状态异常告警表示在过去一段时间内，EMQX Cloud 部署中的某个或多个数据集成连接器处于非正常状态。

该情况通常意味着 EMQX Cloud 与目标外部系统之间的连接不稳定或完全中断，可能导致消息无法正常投递到目标服务。

## 外部服务不可达或网络异常

### 问题描述

当目标外部系统不可达或网络出现异常时，EMQX Cloud 无法与目标服务建立或维持稳定连接，从而导致连接器状态异常。

在**部署日志**中，如果出现 `connection refused`、`timeout`、`unreachable`、`econnrefused` 等报错信息，且连接器状态页面显示为 `已断开`、`错误` 或 `集群中各节点不一致`，则通常符合此类情况。

### 常见原因

- 目标系统不可用或服务未正常运行。  
- 网络中断或网络不稳定。  
- 目标服务端口未开放。  
- EMQX Cloud 与目标服务之间的网络访问受限。  

### 处理方法

- 检查目标系统是否正常运行，并确认其监听端口已开放。  
- 配合 EMQX Cloud 技术支持人员，使用 `ping`、`telnet` 或 `curl` 等工具验证 EMQX Cloud 到目标服务的网络连通性。  
- 确认 VPC、白名单、防火墙或安全组规则已正确配置，允许 EMQX 作为源访问目标服务。  

## 认证失败或权限不足

### 问题描述

当连接器使用的账号、凭证或认证信息配置错误，或账号权限不足时，连接器在尝试建立连接时会快速失败并断开。

在**部署日志**中，如果出现 `authentication failed`、`unauthorized`、`permission denied` 等错误信息，且连接器短暂尝试连接后迅速断开，则通常属于此类情况。

### 常见原因

- 用户名、密码、API Key 或证书配置错误。  
- 凭证已过期或被吊销。  
- 目标系统未授予连接器所需的访问或写入权限。  

### 处理方法

- 检查连接器配置中的用户名、密码、API Key 或证书是否正确。  
- 确认目标系统已为该账号授予必要的权限，例如数据库写入权限、Kafka Producer 权限或云服务 IAM 权限。  

## 目标系统负载过高或资源不足

### 问题描述

当目标系统负载过高或资源不足时，可能无法及时响应 EMQX 的连接请求或数据写入请求，导致连接器状态不稳定。

在目标系统日志中，如果出现 `timeout`、`server busy` 等报错信息，且连接器状态频繁在 `已连接` 与 `已断开` 之间切换，或显示为 `集群中各节点不一致`，则通常可以判断为此类情况。

### 常见原因

- 目标系统 CPU、内存或连接数资源耗尽。  
- 并发请求过高，超过目标系统处理能力。  

### 处理方法

- 检查目标系统的性能指标，包括 CPU、内存和连接数使用情况。  
- 在 EMQX 侧合理配置连接池大小、超时时间、缓存和重试机制。  
- 根据业务需求扩容目标系统，提高整体吞吐能力。  

## 连接器配置错误

### 问题描述

当连接器参数配置错误时，EMQX 无法根据配置正确访问目标资源，连接器将无法建立稳定连接并持续处于异常状态。

在**部署日志**中，如果出现 `invalid config`、`unknown topic`、`table not found` 等报错信息，且连接器始终无法建立连接，则通常属于配置错误导致的问题。

### 常见原因

- 数据库地址、端口或实例信息配置错误。  
- Kafka Topic 名称不存在或拼写错误。  
- 数据库表结构不匹配或表不存在。  

### 处理方法

- 核对连接器配置中的目标地址、端口、Topic 或表名，确保与实际环境一致。  
- 修改错误的配置参数并重新保存连接器配置。  

## 排查步骤

1. 登录 EMQX Cloud 控制台，进入部署。

2. 打开**数据集成** -> **连接器**列表，查看触发告警的连接器状态。

![connector_abnormal_status](./_assets/connector_abnormal_status.png)

3. 打开**部署日志**，将日志类型过滤为**数据集成**，定位具体的错误信息。

![connector_abnormal_logs](./_assets/connector_abnormal_logs.png)

4. 根据日志内容判断问题类型，例如网络异常、认证失败、目标系统负载过高或配置错误。

5. 进入对应的连接器配置页面，点击**编辑**，修改错误参数或更新凭证。

6. 保存配置并重启连接器，观察其状态是否恢复为 `已连接`。