历史版本14 :性能堆栈 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

运维平台版本功能变更
V1.5.5
-
V1.5.7

1)运维平台日志管理功能拆分优

2)对于集群多节点工程,支持单次下载多节点日志文件
3)各类日志下载时,支持选择服务类型,按需下载日志

1.2 应用场景

当工程出现宕机或异常时:

1)在工程宕机时,管理员需要快速生成堆栈日志,以确保事后有办法复盘定位问题。

2)管理员需要对堆栈日志进行分析,追踪问题产生的根本原因,但日志分析对管理员的技术水平要求较高。

3)管理员需要将堆栈日志拿到本地自行分析,或提供给帆软技术支持人员,帮助确认工程存在的问题,但很多公司日志获取费时费力。

FineOps运维平台提供「性能堆栈」功能,支持对堆栈日志进行快速生成、智能分析、便捷下载。

2. 生成日志编辑

应用场景:

当工程宕机或出现异常时,堆栈日志可以帮助管理员快速定位问题所在的代码。

当工程出现性能问题(如响应时间过长或CPU占用过高)时,堆栈日志可以帮助管理员理解程序的执行路径,找到可能的性能瓶颈。

当工程出现问题时,histo日志可以帮助管理员追踪使用者历史输入的命令,保持运维人员对用户行为的监控,追踪问题产生的根本原因

运维平台支持手动/自动生成堆栈和histo日志。

2.1 手动生成

操作步骤:

1)管理员登录运维平台,点击「日志管理>性能堆栈」。选择需要生成日志的「运维项目」。

2)在「生成>手动生成」模块下,选择服务类型。

  • 支持类型:BI、FR

  • 可选范围:当前运维项目所有节点中存在的服务类型,;非容器化运维项目不支持选择服务类型;如不存在任一类型,则不出现该选项。

3)点击「生成」,触发该运维项目下每个节点生成堆栈日志。

4)生成的文件位置为:项目每个节点所在服务器下%Tomcat%\logs\FineLog\日期文件夹内。

注意事项:

每1分钟仅支持生成1次堆栈,以防频繁触发,导致系统性能差。

2.2 自动生成

1)开启「宕机自动处理」

管理员登录运维平台,点击「业务工具>宕机自动处理>宕机处理策略」。

选择需要生成日志的「运维项目」,开启「宕机自动处理」,点击「保存」。

2)配置「自动生成」内容

管理员登录运维平台,点击「日志管理>性能堆栈」。选择需要生成日志的「运维项目」。

在「生成>自动生成」模块下:

  • 支持选择生成类型:包括堆栈、histo,默认全选

  • 支持选择服务类型:包括BI、FR,默认全选(非容器化运维项目不支持选择服务类型;如不存在任一类型,则不出现该选项)

3)触发「自动生成」日志

当工程宕机自动重启后,自动触发该运维项目下每个节点生成堆栈日志。

生成的文件位置为:项目每个节点所在服务器下%Tomcat%\logs\FineLog\日期文件夹内。

3. 分析日志编辑

应用场景:

当工程宕机后,管理员需要对宕机日志进行分析,修复工程存在的问题,防止再次发生。

FineOps运维平台支持对jstack、histo、gc和top-H内容进行分析,帮助用户分析错误堆栈并给出相关改进意见。

3.1 自动分析

1)开启「宕机自动处理」

管理员登录运维平台,点击「业务工具>宕机自动处理>宕机处理策略」。

选择需要生成日志的「运维项目」,开启「宕机自动处理」,点击「保存」。

2)触发「自动分析」日志

当工程宕机自动重启后,自动触发该运维项目下每个节点生成堆栈日志。

FineOps会对每个节点的堆栈日志进行分析,自动分析结果生成在分析记录中。

3.2 手动分析

操作步骤:

1)管理员登录运维平台,点击「日志管理>性能堆栈」。选择需要分析日志的「运维项目」。

2)在「分析」模块下,点击「分析」按钮。触发该运维项目下每个节点生成堆栈日志。

3)FineOps会对每个节点生成的堆栈日志进行分析,分析结果生成在分析记录中。

注意事项:

1)仅支持对运维平台绑定的「运维项目」的日志进行分析,不支持直接上传日志文件分析。

2)每1分钟仅支持进行1次分析,以防频繁触发,导致系统性能差。若分析请求过于频繁,则提示「分析请求太频繁啦,请稍等一分钟后再重新尝试」。

3.3 查看分析记录

管理员登录运维平台,点击「日志管理>性能堆栈」。选择「运维项目」。

在「分析>分析记录」模块下,以明细表形式显示该运维项目下所有手动/自动触发的堆栈分析结果。

1)分析记录以明细表形式展示,展示内容包括:项目名、节点名、操作时间、操作者、操作IP、分析结果。

若手动触发,操作者和操作IP为空。

2)若运维项目为集群环境,每个节点都会生成一份分析结果。

3)日志分析历史记录最多只保留最近50条记录。支持选中单个分析记录删除,支持批量删除多个分析记录,支持清空全部历史记录。

4)点击分析记录中的「查看」按钮,即可在新标签页打开具体的分析结果。

点击对应分析结果后的「查看」按钮,即可查看本次分析的具体结果。

性能堆栈分析结果示例如下图所示,包括分析建议、内存状态和明细、GC状态和耗时。

4. 下载日志编辑

应用场景:

当工程宕机后,管理员需要将宕机日志拿到本地自行分析,或提供给帆软技术支持人员,帮助确认工程存在的问题,防止再次发生。

FineOps运维平台,支持下载以下堆栈日志:

日志
说明
fanruan.gc.log帆软宕机日志
thread.txt线程信息统计报告,该报告包含了所有线程的状态、堆栈跟踪信息等,可以帮助了解应用程序的线程使用情况,及时发现和解决线程问题。
histo.txt内存使用情况统计报告,该报告包含了对象的数量、大小、占用空间等信息,可以帮助了解应用程序的内存使用情况,及时发现和解决内存泄漏等问题。
hs_err.txtJava在运行过程中遇到错误时自动生成的错误报告文件,包含了详细的错误信息、堆栈跟踪信息、线程信息等,可以帮助定位和解决代码问题。
top.txt

Linux 系统下的 top 命令的输出结果,用于显示当前系统中运行进程的相关信息,包括top-H.txt、top-sortedByCPU.txt、top-sortedByMEM.txt

1)top-H.txt:该文件是 top 命令输出结果中的 "H" 模式,用于显示线程信息,包括线程 ID、CPU 占用率、内存占用率等

2)top-sortedByCPU.txt:该文件是 top 命令输出结果按照 CPU 占用率从高到低排序的信息,包括进程 ID、CPU 占用率、内存占用率等

3)top-sortedByMEM.txt:该文件是 top 命令输出结果按照内存占用率从高到低排序的信息,包括进程 ID、CPU 占用率、内存占用率等

操作步骤:

1)管理员登录运维平台,点击「日志管理>性能堆栈」。选择需要下载日志的「运维项目」。

2)选择时间范围。

  • 可选范围:7天前~当前日期,所选时间跨度不可超过2天(48小时)。

  • 默认时间:2小时前~当前时间。

3)选择服务类型。

  • 支持类型:BI、FR

  • 可选范围:所选时间内存在的服务类型;非容器化运维项目不支持选择服务类型;如不存在任一类型,则不出现该选项。

4)选择节点。

  • 支持且默认选中全部节点。

5)点击「下载」,生成堆栈日志文件到本地电脑。

  • 若文件大小超过5G,仅导出5G数据,提示「当前数据量超过导出上限,将按照数据量上限导出。」

  • 日志下载时,文件需要进行压缩,若等待时间过长,用户可点击「取消下载」按钮停止下载。

  • 下载的文件解压后,按照「节点-日期-服务类型-日志类型」结构存放