
# 采集MRS集群服务堆栈信息
当集群服务出现卡顿、响应缓慢或内存泄漏等问题时，集群管理员可在Manager中采集服务堆栈信息用于问题定位。堆栈信息是JVM（Java Virtual Machine，Java虚拟机）运行时的状态快照，通过分析堆栈信息可以定位线程阻塞、内存溢出等问题的根因。Manager支持采集指定角色或实例的堆栈信息，保存到本地目录并支持下载。
#### 相关概念
采集内容包括以下类型，各类型的适用场景如下：
- **jstack栈信息**：jstack是JDK提供的线程栈转储工具，用于生成JVM中所有线程的当前状态快照。适用于定位线程死锁、线程阻塞、CPU使用率过高等线程级别的问题。
- **jmap -histo堆统计信息**：jmap是JDK提供的内存映射工具，-histo参数用于统计JVM堆内存中各类对象的数量和大小。适用于定位内存使用异常、对象数量过多等内存级别的问题。
- **jmap -dump堆信息快照**：使用jmap的-dump参数生成JVM堆内存的完整快照文件，可用于离线分析内存对象引用关系和内存泄漏。适用于需要深入分析内存泄漏场景。
对于jstack和jmap -histo信息，支持连续采集以便对比不同时间点的变化趋势。
#### 约束与限制
- 本章节操作仅支持MRS 3.x及之后的版本。
- 使用jmap -dump采集堆信息快照时，JVM会触发Full GC（全量垃圾回收），可能导致服务异常，建议在业务高峰期请谨慎使用。
 
#### 采集堆栈信息
1. 登录MRS集群Manager界面。 
   登录集群Manager界面请参考[访问MRS集群Manager](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0128.html)。
   
   
2. 选择"集群 \> 服务 \> *待收集服务的名称*"。
3. 选择"更多 \> 采集堆栈"。 
   - 采集多个实例的堆栈信息：进入实例列表，勾选要采集的实例名称，选择"更多 \> 采集堆栈"。
   
   - 采集单个实例的堆栈信息：单击要采集的实例，选择"更多 \> 采集堆栈"。
   
   
   
   
4. 根据界面提示，在弹框中选择需要采集的角色，采集内容，配置高级选项（若无特殊需求，保持默认配置即可），单击"确定"。 
   图1采集堆栈   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001920759174.png "点击放大")
   
   
5. 采集成功后，单击"下载"。 
   采集完成后，在Manager界面查看采集状态是否显示成功。确认能正常下载堆栈文件，并检查文件内容是否包含有效的堆栈信息。
   
   
 
#### 下载堆栈信息
1. 选择"集群 \> *待操作集群*的*名称* \> 服务 \> *待操作服务的名称*"。选择右上角"更多 \> 下载堆栈信息"。
2. 选择需要下载的角色和内容，单击"下载"，可直接下载相关堆栈信息到本地。 
   图2下载堆栈信息   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001920599470.png "点击放大")
   
   
 
#### 清理堆栈信息
清理堆栈信息将删除已采集的堆栈文件，清理后无法恢复。请在确认已完成下载和分析后再执行清理操作。建议在清理前备份重要的堆栈文件。
1. 选择"集群 \> 服务 \> *待操作服务的名称*"。
2. 选择右上角"更多 \> 清理堆栈信息"。
3. 选择需要清理的角色和内容，并配置"文件目录"（设置需要清理的堆栈文件所在目录路径，清理操作将删除该目录下的所有堆栈文件）。单击"确定"执行清理操作。 
   图3清理堆栈信息   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001949278385.png "点击放大")
   清理完成后，在Manager界面查看堆栈信息列表是否已清空。确认本地已下载的堆栈文件是否已完成备份或分析。
   
   
 
#### 常见问题
**Q：** **堆栈文件占用磁盘空间较大怎么办？**
A：建议定期清理已分析完成的堆栈文件，避免占用过多磁盘空间。jmap -dump生成的堆信息快照文件通常较大（与JVM堆大小相当），请确保磁盘有足够的可用空间。
#### 相关文档
- 如需了解MRS集群Manager界面的访问方式，请参考[访问MRS集群Manager](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0128.html)。
- 如需查看集群告警信息以关联分析堆栈问题，请参考[查看MRS集群告警](https://support.huaweicloud.com/usermanual-mrs/zh-cn_topic_0040980162.html)。
- 如需了解JVM调优和内存分析的方法，请参考各组件的相关调优指导说明。
 
