Java应用崩溃的排查流程

目录

分析问题

hs_err_pid.log

上周排查了一个java应用的崩溃问题,在这里记录一下。


分析问题

首先是排查到/tmp目录下有很多的core文件,形式类似:

core-18238-java-1705462412  1.3 GB   程序崩溃数据  2024-01-17 11:33:44 
core-18108-java-1705462399  1.3 GB   程序崩溃数据  2024-01-17 11:35:54
.
.
.
.

core文件,通常是指程序在运行过程中发生严重错误(比如段错误)时生成的一种文件。它记录了程序在崩溃时的内存状态、寄存器信息等,有助于开发者在调试时找到问题所在。一般出现在tmp目录下。

我们在这里可以看到许多core文件,并且文件名中包含java字样,说明这是java应用崩溃的core文件。

hs_err_pid.log

Java应用崩溃的信息往往存储在hs_err_pid.log里面,其中pid是进程的id。

本次崩溃的hs_err_pid.log日志也在tmp下,我们来分析下其中的内容:

日志的一开头会是一些基本信息,比如用到的jdk版本(Line 6),断点的信息(Line 9)等等。

通过开头我们可知,Java应用是在strcpy处断错误的。

再继续看Stack段:

从Stack部分我们可以看出,断错误发生在ScanDevice.so里,com.xwj.verify.ScanDevice.getDeviceList中。

之后联系了维护ScanDevice.so的同事排查,发现是其中的getDeviceList函数的bug,修复了问题后应用可以正常使用,不再崩溃。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/641865.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Leetcode28-合并相似的物品(2363)

1、题目 给你两个二维整数数组 items1 和 items2 ,表示两个物品集合。每个数组 items 有以下特质: items[i] [valuei, weighti] 其中 valuei 表示第 i 件物品的 价值 ,weighti 表示第 i 件物品的 重量 。 items 中每件物品的价值都是 唯一…

jasypt集成spring-boot原理解析

背景 每个应用都有很多配置项,有些配置项对外非常敏感,例如数据库连接密码、私钥等。使用明文存在泄露的风险,生产环境要配合加密算法。jasypt是一个方便、流行的加密工具,支持PBE、AEC和对称加密。它与spring-boot的集成度很高&…

语义分割常用评价指标

在图像处理领域中,语义分割是很重要的一个任务。在实际项目开发中,评估模型预测效果以及各指标的含义对于优化模型极为重要。 本文将主要评价指标的计算算法进行了详细说明,并加上注释解释每个指标的含义。这对理解各指标背后的数学原理以及能否在实践中应用或许有…

对接银行、第三方机构思考

对接银行、第三方机构思考 前置工作 1、产品对接(商务+产品) ①了解准入流程,需要签署哪些协议、合约场景、额度、费率等,估算内部准入流程需要时间判断是否对项目上线排期有影响 ②是否符合自己所要承接的业务场景,有哪些合适,有哪些不合适,不合适的地方对方是否有备…

GPS位置虚拟软件 AnyGo mac激活版

AnyGo for Mac是一款一键将iPhone的GPS位置更改为任何位置的强大软件!使用AnyGo在其iOS或Android设备上改变其GPS位置,并在任何想要的地方显示自己的位置。这对那些需要测试应用程序、游戏或其他依赖于地理位置信息的应用程序的开发人员来说非常有用&…

Python - SnowNLP 情感分析与自定义训练

目录 一.引言 二.SnowNLP 情感分析 1.安装 SnowNLP 2.测试 SnowNLP 三.SnowNLP 自定义训练 1.数据集准备 2.训练与保存 3.模型替换 4.模型测试 5.SnowNLP 原理 ◆ Bayes 公式 ◆ 先验概率 ◆ 后验概率 ◆ 情感模型 四.总结 一.引言 SnowNLP 是一个基于 Python …

网络安全产品之认识防毒墙

在互联网发展的初期,网络结构相对简单,病毒通常利用操作系统和软件程序的漏洞发起攻击,厂商们针对这些漏洞发布补丁程序。然而,并不是所有终端都能及时更新这些补丁,随着网络安全威胁的不断升级和互联网的普及&#xf…

Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin

Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin 在 Android双击图片放大移动图中双击点到ImageView区域中心,Kotlin-CSDN博客 基础上,这次使用ScaleGestureDetector检测两根手指的缩放动作&a…

Python如何叠加两张图片

我这里有如下两张图片,需要把他们叠加在一起,进行查看。这两张图片的大小都是300 300。不拼接在一起就不方便查看。需要把左边的小图,放到右边大图的中间。 一、拼接两个图片的代码 要解决这个问题,你可以使用fromarray()方法将…

JoyRL Actor-Critic算法

策略梯度算法的缺点 这里策略梯度算法特指蒙特卡洛策略梯度算法,即 REINFORCE 算法。 相比于 DQN 之类的基于价值的算法,策略梯度算法有以下优点。 适配连续动作空间。在将策略函数设计的时候我们已经展开过,这里不再赘述。适配随机策略。由…

MATLAB数据处理: 每种样本类型随机抽样

tn5;% 每种类型随机抽样数 indextrain[];% 训练样本序号集 for i1:typenumber index301 find(typemat i); n2length(index301); index302randperm(n2); index401index301(index302(1:tn)); indextrain[indextrain; index401]; end 该代码可以对大样…

java进阶

文章目录 一、Java进阶1.注解(Annotation)a.内置注解b.元注解c.自定义注解 2.对象克隆3. Java设计模式(Java design patterns)a.软件设计模式概念b.建模语言(UML)c.面向对象设计原则d.设计模式 总结面向对象…

从0开始学习mysql 第十六课:数据库锁及InnoDB锁机制

第十六课:数据库锁及InnoDB锁机制 学习目标 今天我们要深入学习以下内容: 理解数据库锁的作用及其对事务控制的重要性。详细了解InnoDB支持的锁类型:共享锁(S锁)、排他锁(X锁)。掌握意向锁&a…

分享一个C++下使用简单的反射实现的程序模块化的思路

分享一个C下使用简单的反射实现的程序模块化的思路 首先说一个基本问题,项目大了以后,一定要做模块化处理,每个模块处理各自的事情,各个模块之间尽量不要有太多的耦合,就是说模块A尽量不要依赖模块B,模块B…

栈的基本操作(c++题解)

题目描述 栈:插入元素和删除元素只能在线性表的一端进行,所以遵循“先进后出 (LIFO) ”原则,其中插入和删除的一端称为栈顶 (top)。我们可以把栈比喻成一个箱子,只能在箱子的开口处放入和取出物体,而且是后放入的物体…

项目工程下载与XML配置文件下载:EtherCAT超高速实时运动控制卡XPCIE1032H上位机C#开发(十)

XPCIE1032H功能简介 XPCIE1032H是一款基于PCI Express的EtherCAT总线运动控制卡,可选6-64轴运动控制,支持多路高速数字输入输出,可轻松实现多轴同步控制和高速数据传输。 XPCIE1032H集成了强大的运动控制功能,结合MotionRT7运动…

MongoDB之整合SpringBoot

MongoTemplate 方式 依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>创建账户 # 切换到数据库 use study # 创建账户 db.createUser({user:&quo…

深度解析Oladance、韶音、南卡开放式耳机:选购指南与天花板级推荐

​随着开放式耳机在日常生活中越来越受欢迎&#xff0c;许多品牌纷纷降低材料品质以迎合大众需求&#xff0c;导致耳机的性能和音质严重下滑。这让消费者在选择优质开放式耳机时感到困惑。作为一名专业的耳机评测人员&#xff0c;我近期对多款热门开放式耳机进行了深入的测评&a…

Leetcode—92.反转链表II【中等】

2023每日刷题&#xff08;八十一&#xff09; Leetcode—92.反转链表II 算法思想 实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), n…

kubernetes Pod 异常排查步骤

kubernetes Pod 异常排查步骤 详细排查图查看容器状态查看容器列表容器未启动成功排查容器启动成功排查pod状态对应原因 详细排查图 查看容器状态 查看容器列表 查看容器列表,最好在后面跟上命名空间,不跟上查询出来是默认的 kubectl get pods -n kubesphere-system单独查看某…