
# ALM-45587 IoTDBServer垃圾回收（GC）时间超过阈值
#### 告警解释
系统每60秒周期性检测IoTDBServer进程的垃圾回收（GC）时间，当检测到IoTDBServer进程的垃圾回收（GC）连续3次超过阈值（默认12秒）时产生该告警。用户可通过"运维 \> 告警 \> 阈值设置 \> *待操作集群的名称* \> IoTDB \> GC \> IoTDBServer垃圾回收（GC）总时间 (IoTDBServer)"来修改阈值。当IoTDBServer垃圾回收（GC）时间小于阈值时，告警恢复。
#### 告警属性
| 告警ID  | 告警级别 | 是否自动清除 |
|:---|:---|:---|
| 45587 | 重要   | 是      |
   
#### 告警参数
| 参数名称              | 参数含义                  |
|:---|:---|
| 来源                | 产生告警的集群名称。            |
| 服务名               | 产生告警的服务名称。            |
| 角色名               | 产生告警的角色名称。            |
| 主机名               | 产生告警的主机名。             |
| Trigger Condition | 系统当前指标取值满足自定义的告警设置条件。 |
   
#### 对系统的影响
IoTDBServer进程的垃圾回收（GC）时间过长，可能影响该IoTDBServer进程无法正常提供数据读写服务。
#### 可能原因
该节点IoTDBServer实例堆内存使用率过大，或配置的堆内存不合理，导致进程GC频繁。
#### 处理步骤
**检查GC时间。**
1. 在FusionInsight Manager首页，选择"运维 \> 告警 \> 告警"，弹出告警页面，选中"告警ID"为"45587"的告警，在该页面的告警详情里查看"定位信息"中的角色名并确定实例的IP地址。
2. 选择"集群 \> *待操作集群的名称* \> 服务 \> IoTDB \> 实例"，单击告警上报的IoTDBServer，进入实例"概览"页面。单击图表区域右上角的下拉菜单，选择"定制 \> GC"，勾选"IoTDBServer垃圾回收（GC）总时间"，单击"确定"，查看IoTDBServer进程的GC时间是否大于12秒。
   
   - 是，执行[步骤 3]。
   
   - 否，执行[步骤 5]。
   
   
   
   
3. 选择"集群 \> *待操作集群的名称* \> 服务 \> IoTDB \> 配置"，单击"全部配置"， 选择"IoTDBServer \> 系统"，将参数"GC_OPTS"中"-Xmx"的值参考以下说明进行调大。
   
   ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/note_3.0-zh-cn.png)
   - "-Xmx"的值默认2G。
   
   - 如果该告警偶然发生，参数值按照0.5倍速率调大。如果该告警频繁发生，参数值按照1倍速率调大。
   
   - 多业务量、高并发的情况可以考虑扩容实例。
    
   
   
4. 观察界面告警是否清除。 
   - 是，处理完毕。
   
   - 否，执行[步骤 5]。
   
   
   
   
**收集故障信息。**
5. 在FusionInsight Manager界面，选择"运维 \> 日志 \> 下载"。
6. 在"服务"中勾选操作集群的"IoTDB"，单击"确定"。
7. 单击右上角的![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001159904713.png)设置日志收集的"开始时间"和"结束时间"分别为告警产生时间的前后30分钟，单击"下载"。
8. 请联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
无。
