历史版本9 :宕机处理 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本
11.0

1.2 应用场景

报表工程部署在服务器上后,会因为各种原因导致宕机。宕机后若直接重启没有抓取 DUMP 文件 ,很难定位到真实原因,从而无法快速解决问题和做一些防止再发生的预防措施,造成的时间和精力损失无法估计,对服务器运维非常不友好。

FineReport 提供「宕机处理」功能。通过此功能,报表工程可以自动生成 DUMP 文件、同时可重新启动系统。

发生宕机后,通过分析生成的 DUMP 文件,可以快速定位宕机原因,及时处理宕机问题和做一些有效的预防措施,为用户增加一道保险。

1.3 功能简介

「宕机处理」功能实质上是一个宕机自动处理工具,有平台入口和客户端入口。

1)平台端:内置在平台的部分主要为工具运行环境监测和一些设置项,分别为运行监测、宕机处理、内存堆栈导出记录、服务器重启记录。

2)客户端:客户端主要监控工程运行状况。

注1:对于非 Tomcat 容器部署以及设计器自带的工程,不支持「宕机处理」功能。

注2:报表与 BI 集成的用户在使用此功能时,优先调用 BI 工程的「宕机处理」功能,禁用报表工程的「宕机处理」功能,以保证不影响 BI 工程的运行。

2. 平台端编辑

超管登录数据决策系统,点击「管理系统>智能运维>宕机处理」,就可以看到平台端对应的功能模块。如下图所示:

模块下功能主要分四部分,分别为运行监测、宕机处理、处理记录 3 部分。

注:宕机处理页面在平台端打开时,加载时间较长,请耐心等待。

2.1 运行监测

系统需要满足一些条件,才能保证宕机自动处理工具的正常运行。因此工程启动后,会先对端口状态、JDK环境、堆外内存、部署情况进行检测。

检测有问题则提醒用户做相应修改或者禁用宕机功能,无问题则持续稳定运行。如下图所示:

运行检测」每项对应的检查内容如下表所示:

注1:若检测结果为优,则提示「此项配置良好,无需调整」。

注2:10.0.17 及之后版本新增检查项「操作系统」。

注3:检查项「JDK」,在10.0.17 之前版本必须配置JDK,方可检查过关。

序号检查项检测出问题标准修改建议
1操作系统当前系统非 Windows/Linux 系统

建议使用 Linux 系统以保证宕机自动处理工具稳定运行

此状况下,将不进行下面的四项检查

2端口12100端口状态异常(端口未开启或被占用)建议开放 12100 端口或设置其他端口以保证系统正常运行
端口设置请参考本文 2.2.5 节
3JDK1)10.0.17 之前版本:工程中未配置 JDK(系统配置JDK有问题)

2)10.0.17 及之后版本:

  • 工程中有 非 Oracle jre 的 tools.jar,且工程中未配置 JDK(系统配置JDK有问题)

  • 工程中无 tools.jar,且工程中未配置 JDK(系统配置JDK有问题)

建议增加系统 JDK 配置/ tools.jar 设置以保证系统正常运行

JDK 和 tools.jar 设置请参考:Linux 下 Tomcat 服务器独立部署
4堆外内存堆外内存不足

强烈建议物理机总内存减去系统所在容器使用内存不小于10GB

5部署方式非 Tomcat 容器部署建议使用 Tomcat 容器部署
Tomcat 部署请参考:Tomcat 服务器部署

当监测到操作系统、端口、JDK、堆外内存影响功能使用时,会通过「平台消息」和平台右下角「弹窗消息」提醒用户。

点击「处理」即可跳转到跳转到「宕机处理」平台配置页面,从而对其进行相应的处理。如下图所示:

消息提醒内容为:当前宕机自动处理工具不可用,为保证功能正常运行,建议你点击处理查看详情。

2.2 宕机处理

用户可以在「宕机处理」位置做一些配置设置,可设置的项为:宕机自动处理、自动导出内存堆栈、宕机自动重启、宕机通知、端口设置。如下图所示:

注:以下所有设置修改后需点击「保存」按钮才会生效。

2.2.1 宕机自动处理

当系统配置满足「运行监测」中的运行条件时,工具自动运行,此开关默认开启。

当系统配置不满足运行条件时,开关图标灰化,不能编辑修改。

注:10.0.17 及之后版本工程,

       在工作时段(6:00-23:00),当报表工程主进程关闭5分钟后,宕机自动处理工具也跟随关闭。

       在非工作时段(0:00-6:00,23:00-24:00),报表工程主进程关闭,宕机自动处理工具不跟随关闭。

2.2.2 自动导出内存堆栈

  • 若「宕机自动处理」未开启,此项灰化处理,不能编辑修改。

  • 若「宕机自动处理」开启,此项默认关闭,开启后当发生宕机时,会自动导出宕机日志,导出位置为:%Tomcat%\logs\FineLog\日期

开关开启时,会对工具状态和当前系统情况做检测。检测系统是否集成 BI,若集成 BI,弹窗提示:该功能暂不支持 BI 系统。如下图所示:

点击确定或关闭按钮弹窗关闭,开关不开启。

2.2.3 宕机自动重启

  • 若「宕机自动处理」未开启,此项灰化处理,不能编辑修改。

  • 若「宕机自动处理」开启,此项默认关闭,开启后当发生宕机时会自动重启工程。

开关开启时,会对工具状态和当前系统情况做检测。

1)检测系统是否集成 BI,若集成 BI,点击后弹窗提示:该功能暂不支持 BI 系统。如下图所示:

点击确定或关闭按钮后弹窗关闭,开关不开启。

2)检测是否为 Windows 操作系统,是否为 Windows 服务形式。

若系统为 Windows 操作系统且为 Windows 服务形式,弹窗提示:该功能暂不支持当前系统。如下图所示:

点击确定和关闭按钮后弹窗关闭,开关不开启。

若系统为 Windows 操作系统且非Windows 服务形式,弹窗提示:当前系统可能会存在重启失败。如下图所示:

点击确认或关闭按钮后关闭弹窗,开关开启。

检测时,若以上问题同时存在,仅提示当前问题中主要度最高的一个,重要度排序为:该功能暂不支持当前系统>该功能暂不支持 BI >当前系统可能会存在重启失败。

2.2.4 宕机通知

「宕机自动处理」未开启,此项灰化处理,不能编辑修改;若「宕机自动处理」开启,此项默认关闭,开启后,可配置短信提醒、平台消息提醒、邮箱提醒,当发生宕机时会按配置的通知方式通知到用户。

2.2.5 端口设置

「宕机处理工具」默认的端口为 12100,当 12100 端口异常时,可以在此处配置其他端口号。

端口号范围要在1024 到 65535 之间,推荐12100。否则「宕机处理工具」无法启动,「宕机处理」页面无法打开。

10.0.17 及之后版本的工程新增错误提示:请输入1024-65535 之间的数字,推荐12100。

输入新的端口号后,点击「测试」,若新的端口号存在异常,则弹窗提示:端口异常,请重新设置。如下图所示:

若端口无异常,则弹窗提示:端口可用,保存后宕机自动处理工具将在新端口重启。如下图所示:

2.3. 处理记录

「内存堆栈导出记录」和「服务器重启记录」分别记录了自动生成 DUMP 文件记录和服务器重启的记录。其中包括导出(重启)的开始时间、时长、是否成功、如果失败,失败的原因等。如下图所示:

注:10.0.17 及之后版本的工程,仅读取最近一个月的宕机处理记录。

3. 客户端编辑

服务器工程以管理员权限启动后,管理员在浏览器端输入http://IP:端口(宕机自动处理工具默认端口为12100,若修改了端口,此处为修改后的端口)/operation/tool,便可以进入宕机工具客户端界面,如下图所示:

企业微信截图_16179658208073.png

超管使用账号密码登录后可进入用户端界面,登录失败 5 次登录锁定,限制 60 分钟内不可登录;登录有效期为 15 分钟,超时自动退出。

注:若用户在宕机时被登录锁定,需要用户手动杀掉进程。

用户端界面, 主要有工程运行情况监控和输出堆栈两个功能,右上角有「注销登录」按钮,点击可退出登录。如下图所示:

企业微信截图_16179658384716.png

3.1 运行监控

工程运行监控中,若服务器正常运行,则画面显示:正常运行中。如下图所示:

若发生宕机,则画面显示:已宕机,正在处理中。如下图所示:

宕机后,工具自动处理时,用户可手动终止工具对于宕机问题的处理,进行终止后,页面显示:已终止宕机自动处理,请及时手动重启系统。如下图所示:

宕机后,小工具重启工程时,若小工具重启工程失败,页面显示:宕机自动重启失败,请及时手动重启系统。如下图所示:

3.2 输出堆栈

用户可以在「输出堆栈」处,导出线程堆栈和内存堆栈文件,点击相应位置导出即可。如下图所示:

导出成功后提示:输出成功,否则提示输出失败,输出的堆栈文件位置为:%Tomcat%\logs\FineLog\日期