
# ALM-45650 RocksDB的Write P95耗时持续超过阈值
#### 告警解释
系统以用户配置的告警周期（metrics.reporter.alarm.job.alarm.rocksdb.metrics.duration，默认180s）检查作业RocksDB监控数据，如果作业RocksDB的Write P95耗时达到用户配置的阈值（metrics.reporter.alarm.job.alarm.rocksdb.write.micros.threshold，默认值50000，单位微秒），则发送告警。当作业RocksDB的Write P95耗时时间小于或等于阈值，则告警恢复。
本章节仅适用于MRS 3.3.0-LTS至MRS 3.6.0-LTS.1版本。
#### 告警属性
| 告警ID  | 告警级别 | 是否可自动清除 |
|:---|:---|:---|
| 45650 | 次要   | 是       |
   
#### 告警参数
| 参数名称 | 参数含义       |
|:---|:---|
| 来源   | 产生告警的集群名称。 |
| 服务名  | 产生告警的服务名称。 |
| 应用名  | 产生告警的应用名称。 |
| 角色名  | 产生告警的角色名称。 |
| 任务名  | 产生告警的作业名称。 |
   
#### 对系统的影响
Flink作业RocksDB的Write P95耗时持续超过阈值，主要反应的是Flink作业的CheckPoint的性能，对FlinkServer本身没有影响。
#### 可能原因
Flink作业RocksDB的Write P95耗时持续超过阈值的可能原因：
- MemTable太多引起写限流或写停止，伴随有"ALM-45643 RocksDB的MemTable大小持续超过阈值"的告警。

- Level0层SST文件数太大，伴随有"ALM-45644 RocksDB的Level0层SST文件数持续超过阈值"的告警。

- 预估Compaction的大小超过阈值，伴随有"ALM-45647 RocksDB的Pending Compaction预估总大小持续超过阈值"的告警。
 
#### 处理步骤
**检查是否** **MemTable太多引起写限流或写停止**
1. 在FusionInsight Manager首页，选择"运维 \> 告警 \> 告警"。
2. 在告警列表中，查看是否存在告警"ALM-45643 RocksDB的MemTable大小持续超过阈值"。 
   - 是，执行[步骤 3]。
   
   - 否，执行[步骤 5]。
   
   
   
   
3. 参考[ALM-45643 RocksDB的MemTable大小持续超过阈值](https://support.huaweicloud.com/usermanual-mrs/ALM-45643.html)章节处理对应的告警。
4. ALM-45643告警全部恢复后，等待几分钟，检查本告警是否恢复。 
   - 是，处理完毕。
   
   - 否，执行[步骤 5]。
   
   
   
   
**检查是否Level0层SST文件数太大**
5. 在FusionInsight Manager首页，选择"运维 \> 告警 \> 告警"。
6. 在告警列表中，查看是否存在告警"ALM-45644 RocksDB的Level0层SST文件数持续超过阈值"。 
   - 是，执行[步骤 7]。
   
   - 否，执行[步骤 9]。
   
   
   
   
7. 参考[ALM-45644 RocksDB的Level0层SST文件数持续超过阈值](https://support.huaweicloud.com/usermanual-mrs/ALM-45644.html)章节处理对应的告警。
8. ALM-45644告警全部恢复后，等待几分钟，检查本告警是否恢复。 
   - 是，处理完毕。
   
   - 否，执行[步骤 9]。
   
   
   
   
**检查是否预估Compaction的大小超过阈值**
9. 在告警列表中，查看是否存在告警"ALM-45647 RocksDB的Pending Compaction预估总大小持续超过阈值"。
   
   - 是，执行[步骤 10]。
   
   - 否，执行[步骤 12]。
   
   
   
   
10. 参考[ALM-45647 RocksDB的Pending Compaction预估总大小持续超过阈值](https://support.huaweicloud.com/usermanual-mrs/ALM-45647.html)章节处理对应的告警。
11. ALM-45647告警全部恢复后，等待几分钟，检查本告警是否恢复。 
    - 是，处理完毕。
    
    - 否，执行[步骤 12]。
    
    
    
    
**收集故障信息**
12. 使用具有FlinkServer管理操作权限的用户登录FusionInsight Manager。
13. 选择"运维 \> 告警 \> 告警 \> ALM-45650 RocksDB的Write P95耗时持续超过阈值"，检查该告警的"定位信息"，查看并记录告警上报的任务名。
14. 选择"集群 \> 服务 \> Yarn"，单击"ResourceManager WebUI"后的链接进入Yarn原生页面。

15. 根据告警"定位信息"中的任务名找到异常任务，查找并记录作业的"application ID"，是否可以在Yarn页面上查看到作业日志。 
    图1作业的"application ID"   
    ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001675093640.png "点击放大")
    - 是，执行[步骤 16]。
    
    - 否，执行[步骤 18]。
    
    
    
    
16. 单击失败作业application ID进入作业界面。
    
    1. 单击作业"Logs"列的"Logs"，查看并保存Jobmanager日志。
       图2单击"Logs"   
       ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001674933928.png "点击放大") 
    
    2. 单击"Attempt ID"列的ID，单击"Logs"列的"Logs"，查看并保存TaskManager日志。
       图3单击"Attempt ID"列的ID   
       ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001723133069.png "点击放大")
       图4单击"Logs"   
       ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001723013181.png "点击放大")
       ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/note_3.0-zh-cn.png)
       使用具有FlinkServer管理操作权限的用户登录Manager，选择"集群 \> 服务 \> Flink"，单击"Flink WebUI"后的链接，单击"作业管理"，在作业的"操作"列选择"更多 \> 作业详情"也可查看TaskManager日志。
       
    
    
    
    
17. 查看作业日志进行故障修复，或联系运维人员，并发送已收集的故障日志信息。操作结束。
**若无法在Yarn页面上查看日志，可通过HDFS下载日志。**
18. 返回Manager，选择"集群 \> 服务 \> HDFS"，单击"NameNode WebUI"后的链接进入HDFS页面，选择"Utilities \> Browse the file system"，在"/tmp/logs/*用户名* /bucket-logs-tfile/*任务application ID的后4位/任务的application ID*"目录下载日志。
19. 查看失败作业日志进行故障修复，或联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
不涉及。
