在长期排查线上问题的过程中,总结了一些工具的用法和排查问题的思路,这里跟大家分享一下,在遇到类似的问题时,希望能给予一些帮助。 首先讲讲工具, jvm 自带的一些工具是必须熟练掌握的,例如jstack, jmap, jstat等,它们可以帮我们去深入了解JVM正在做的事情,主要的适用领域有这些: 1
转载 2016-05-05 10:19:00
243阅读
2评论
ps -mp pid -o THREAD,tid,time 查看飙高线程。jstack pid |grep tid -A 30 查看日志。printf “%x\n” tid #转十六进制。top # 查看飙高进程。
原创 2023-03-08 00:14:19
94阅读
CPU 资源占用过高top 查看当前 CPU 情况,找到占用 CPU 过高的进程 PID=123。top -H -p123 找出两个 CPU 占用较高的线程,记录下来 PID=2345, 3456 转换为十六进制。jstack -l 123 > temp.txt 打印出当前进程的线程栈。查找到对应于第二步的两个线程运行栈,分析代码。OOM 异常排查使用 top 指令查询服务器系统状态。ps
JVM
转载 2021-02-26 10:57:16
201阅读
2评论
# Java 排查问题工具 ## 导言 在进行 Java 开发过程中,我们经常会遇到各种问题,如程序运行错误、性能问题等。为了更好地排查和解决这些问题,我们需要使用一些强大的工具。本文将介绍一些常用的 Java 排查问题工具,包括代码示例和详细的使用说明。 ## 目录 1. [Introduction](#introduction) 2. [Java 排查问题工具](#java-排查问题
原创 6月前
36阅读
先来一段能够内存溢出的程序 设置jvm参数保留堆栈信息 jdk的bin目录下有许多工具 /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/bin 找到jvisualvm,双击打开
原创 2022-04-22 13:54:16
405阅读
遇到问题 源代码: import csv # 定义Excel文件路径 excel_file = '花生好车还款计划_48期_无本息月供4495_还款日20231110.xls' # 定义输出文本文件路径 text_file = 'repayPlan.txt' # 读取Excel文件 with open(excel_file, 'r', newline='',encoding='utf-8'
什么时候该排查:1.GC过程中,会Stop the World,不干其他活2.本该运行好的程序,在某个时刻卡住,业务日志没有异常3.通过CAT等监控工具,发现某段时间内存用量居高不下上线后一般接CAT等监控工具,监控内存。如果超出阈值,发出一报警邮件。4.稳定重现OOM,比如一天一次,或者每天频繁出现 通过GC日志确认:1.能看到GC发生时间和回收的内存量。2.结合卡的时间点,确认是因为
Java程序在运行中会出现各种问题,包括CPU、内存、磁盘等。下面介绍一下常用的问题排查方法。一、CPU问题当出现性能问题时,我们首先会排查是否是CPU方面的问题。包括CPU负载过高、死循环、频繁 gc 以及上下文切换过多。在JAVA程序中,经常使用jstat、jstack命令来排查Java程序导致的CPU问题。我们先用 ps 命令找到对应进程的 pid(如果你有好几个目标进程,可以先用 top
​​Mysql show processlist 排查问题​​一、命令概述:mysql show full processlist 用来查看当前线程处理情况,具体信息请参考官网:https://dev.mysql.com/doc/refman/5.7/en/show-processlist.htmlshow full processlist 返回的结果是实时变化的,是对mysql链接执行的现场快照
转载 2020-11-02 14:09:00
115阅读
2评论
Linux下启动Tomcat启动并显示控制台日志信息Windows下启动tomcat,一般直接运行startup.bat,启动后显示一些控制台启动的日志信息,就好像我们在编程序时候打印在控制台中的一样的。如果没有这些信息我们就好像没有眼睛的盲人瞎折腾,根本就搞不定这些问题
原创 2022-02-14 11:53:37
612阅读
JVM线上排查问题过程 记录如何排查CPU100%问题。 当我们把服务发布到服务器上,可能会因为一些问题造成我们的服务器CPU被打满甚至超过100%,那如果我们想知道到底上在做什么操作导致CPU持续过高呢?因为在线上,我们只能通过日志看问题,或者排查到哪个进程或者哪个线程持续占用CPU。然后才能找到 ...
转载 2021-08-21 23:21:00
104阅读
2评论
JVM线上排查问题过程 记录如何排查CPU100%问题。 当我们把服务发布到服务器上,可能会因为一些问题造成我们的服务器CPU被打满甚至超过100%,那如果我们想知道到底上在做什么操作导致CPU持续过高呢?因为在线上,我们只能通过日志看问题,或者排查到哪个进程或者哪个线程持续占用CPU。然后才能找到 ...
转载 2021-08-21 23:21:00
183阅读
2评论
5月29日任务1.6/1.7 配置IP1.8 网络问题排查配置IP目的就是可以通过远程连接更好的操作系统,同时也可以模拟出来一个实际的场景因此就需要配置一个静态ipdhclient 命令就是自动获取一个ip的命令,在这个命令未执行前是看不到IP的,只有执行后才会有ip等信息出现。所以需要先执行一下这条命令。dhclient命令使用动态主机配置协议动态的配置网络接口的网络参数。dhclient&nb
原创 2018-05-29 23:48:56
511阅读
点击上方“朱小厮的博客”,选择“设为星标”后台回复"书",获取后台回复“k8s”,可领取k8s资料来源:r6d.cn/abRHU一、cat命令:二、more命令:三、l...
转载 2021-09-15 15:35:48
98阅读
Linux下启动Tomcat启动并显示控制台日志信息Windows下启动tomcat,一般直接运行startup.bat,启动后显示一些控制台启动的日志信息,就好像我们在编程序时候打印在控制台中的一样的。如果没有这些信息我们就好像没有眼睛的盲人瞎折腾,根本就搞不定这些问题。好好的去理解这个很有必要。借助前人的优秀的设计标准的打印在logs的日记中,存在的只是我们没有去看而已,碰巧没有出问题,懒得出看
原创 2021-08-24 09:48:46
249阅读
比如主机、中间件或DB问题。这种按主机层面问题、中间件或存储(统称组件)的问题分为:主机层可使用工具排查:CPU相关使用top、vmstat、pidstat、ps内存相关使用free、top、ps、vmstat、cachestat、sarIO相关使用lsof、iostat、pidstat、sar、iotop、df、du网络相关使用ifconfig、ip、nslookup、dig、ping、tcpd
某Java服务(假设PID=10765)出现了OOM,如何快速定位?Java服务出现OOM,最常见的原因是:(1)内存确实分配过小,内存确实不够用;(2)某一个对象被频繁申请,却没有释放,内存不断泄漏,导致内存耗尽;(3)某一个资源被频繁申请,系统资源耗尽,例如:不断创建线程,不断发起网络连接;更具体的,可以按照以下步骤,使用以下工具排查。 一、确认是不是内存本身就分配过小方法:jmap
学会用Mysqlshowprocesslist排查问题青春阳光king码农编程进阶笔记mysqlshowfullprocesslist查看当前线程处理情况事发现场每次执行看到的结果应该都有变化,因为是实时的,所以我定义为:“事发现场”,每次执行就相当于现场的快照一般用到showprocesslist或showfullprocesslist都是为了查看当前mysql是否有压力,都在跑什么语句,当前语
原创 2021-02-27 14:01:37
366阅读
作者:琴水玉 来源: 在程序中打错误日志的主要目标是为更好地排查问题和解决问题提供重要线索和指导。但是在实际中打的错误日志内容和格式变化多样,错误提示上可能残缺不全、没有相关背景、不明其义,使得排查解决问题成为非常 ...
转载 2021-05-26 13:18:00
92阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5