快速入门Java线程栈分析

本文将演示如何通过ATP的Java线程栈分析功能,分析Java应用中线程的运行情况。1.生成数据源,上传到ATP a.用户可以通过JDK中自带的jstack命令创建Java应用的线程快照,如下:#生成线程快照并输出到 jstack.log$jstack<进程号>>jstack.log b...

Java线程栈分析

Java线程栈分析 在日常业务开发中,我们经常遇到Java应用导致CPU 100%使用率且居高不下,或者出现应用死锁、错误并发逻辑、无响应等问题,在这些场景中我们可以输出栈日志。Java线程栈分析 对栈日志进行分析,聚合成调用火焰图,帮助用户...

线程状态

注意,由于JVM对OS线程也做了简单的抽象,所以它可以识别出一些JVM的特性(比如当前OS线程是因为Java代码执行object.wait()阻塞了,所以我们能看到操作系统线程有 MONITOR_WAIT 等状态)Java线程状态 NEW 线程刚创建 RUNNABLE 线程正在运行...

运维管理

Workbench 的运维功能 支持可视化地为 Linux实例上的 Java应用新增运维任务,例如 新增 Java堆分析、线程栈分析或性能分析任务。本文为您介绍Linux实例运维功能的具体操作和查看任务分析结果的具体方法。前提条件 ECS实例必须为Linux实例,...

功能特性

目前ATP主要包含如下分析诊断功能特性 功能名称 目标场景 Java线程栈分析 Java线程栈分析可以发现CPU负载过高、应用卡死等问题 Java堆分析 Java堆分析通过分析Heap dump文件,可以发现GC频率过快、GC回收效率低下、应用出现...

分析视图简介

Java线程栈分析视图页面中每个视图的主要功能 基础信息 线程栈日志的基础信息,包括创建时间、不同线程类型有多少线程线程状态等。线程信息 线程栈日志的可视化界面,提供查找、排序、过滤等基础功能。同步器 列出所有同步器(Monitor)...

什么是应用诊断分析平台ATP

Java GC日志分析 Java的自动内存管理和垃圾回收(Garbage Collection,GC)机制大大提高了业务的开发效率,但是在开发过程中因为垃圾回收而导致的长暂停等问题屡见不鲜,GC日志是我们排查GC相关问题时最重要的日志。GC日志冗长,格式多变,...

Java线程栈分析-CPU利用率持续升高

Java线程栈分析-CPU利用率持续升高 异常现象 某日接到业务同学反馈异常如下:1.业务放量过程中,cpu持续升高,不清楚具体的原因 2.系统代码主要在等待下游返回结果,本地并没有复杂的处理逻辑 线程栈分析 业务同学保留了现场的jstack log...

执行DDL操作提示“获取不到MDL锁”

如果kill不掉线程、线程ID不存在或者出现如下报错,请 提交工单 联系阿里云技术支持进行处理。ERROR 1094(HY000):Unknown thread id:xxx 使用Hint语法指定只读节点执行以下SQL查询目标表上MDL锁状态。force_node='pi-bp10k7631d6k3*'*/...

准备工作

根据数据源的不同,您需要先在页面左侧选择合适的分析工具:Java堆分析 Java线程栈分析 Java GC日志分析 然后点击 上传文件 按钮上传数据源。目前应用诊断分析平台支持以下上传方式:通过URL上传(为OSS文件生成URL链接请参见 OSS文档)...

Java沙箱

java.version java.vendor java.vendor.url java.class.version os.name os.version os.arch file.separator path.separator line.separator java.specification.version java.specification.vendor java.specification.name java.vm....

MaxCompute UDF(Java)常见问题

Java沙箱限制问题 问题现象:调用MaxCompute UDF访问本地文件、外网或分布式文件系统,创建Java线程等时,代码运行会报错。产生原因:网络限制问题,MaxCompute UDF默认不支持访问网络。解决措施:请根据业务情况填写并提交 网络连接申请...

事件中心事件源

死锁事件 WARNING Java应用线程出现死锁。流量不均事件 WARNING Java应用存在流量不均。JVM指标异常事件 WARNING Java应用存在JVM指标异常。新增异常事件 WARNING Java应用出现新增异常。错误率突增事件 WARNING Java应用服务整体错误率...

常见问题

一般是由于使用了Alpine基础镜像,Alpine基础镜像为了控制体积而去除了JDK调试符号(debug symbols),导致JDK里面的C++线程中的方法栈无法识别出函数名字,只能显示为no_Java_frame,由于这些方法栈主要是非Java线程执行信息,一般常见...

为什么CPU负载高?

本文介绍使用 SAE 时,如何解决CPU负载高的问题。问题现象 CPU使用率100%CPU使用率高 负载(Load)高 问题原因 CPU...参见 Java通过Jstack查看线程栈 获得Java线程栈,通过和上面十六进制的线程ID匹配,找到CPU占用较高的线程栈,分析根因。

java_lang_RuntimeException

用户又将被系统杀掉的非前台应用带回前台,如果这个时候有UI是呈现在Fragment中,那么会因为restore造成fragment需要通过反射实例对象,从而将之前save的状态还原。因此不应该改写构造函数,而应该使用静态方法比如newInstance来构造有参...

常见问题

354)at java.lang.ClassLoader.loadClass(ClassLoader.java:425)at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)at java.lang.ClassLoader.loadClass(ClassLoader.java:358).3 more 或 Exception in thread"main"java....

常见问题

本文针对当前版本Java SDK的常见问题提供解决方法以供参考。说明 若发送交易出现 SERVICE_TX_WAITING_VERIFY=413 或者 SERVICE_TX_WAITING_EXECUTE=414 错误码,请您通过调用 查询收据 接口进行排查。Illegal key size or default ...

异步处理

线程中使用 java.lang.Runnable 如果您在代码中通过 java.lang.Runnable 新启动了线程或者采用了线程池去异步地处理一些业务,那么需要将 SOFATracer 日志上下文从父线程传递到子线程中去,SOFATracer 提供的 ...您可以按照以下方式使用:...

什么是应用防护

当攻击者拿到代码执行权限后,可以通过新建线程的方式使RASP丢失运行环境的上下文,从而影响RASP的防御能力。您的服务器可能存在代码执行漏洞。请检查漏洞的位置并限制执行代码的功能。恶意Attach Attach API是Java提供的动态修改字节码...

消息队列RocketMQ版客户端如何设置消费线程数?

云消息队列 RocketMQ 版 所提供的TCP Java SDK支持多线程消费,且适用于所有消息类型,本文介绍如何设置消费线程数的方法。在启动Consumer时,设置一个ConsumeThreadNums属性即可。具体示例如下所示。public static void main(String[]args...

常见问题

处理方法:可以使用 head 和 tail 命令结合日志中生成的时间戳信息,来判断是否由于Java Logging APIs生成的日志导致存储空间占用过大。通常情况下,这些依赖库产生的都是INFO级别日志,不影响组件正常功能使用,但为了避免数据盘存储空间...

如何快速定位及解决数据库问题

方法一:KILL所有语句 如果Processlist中显示堆积了很多SQL,建议立即KILL所有正在执行的语句,PolarDB-X 提供了如下指令进行这个操作:KILL"ALL"该语句会KILL计算节点与数据节点之间的每一个连接,从而达到结束所有语句的效果。...

RPC 常见问题

如果发生 RPC 线程池队列阻塞,先确认是否发生超时的时间段有业务请求高峰,或者用 jstack 查看业务线程是否有等待或者死锁情况,导致 RPC 线程耗尽。更多信息,请参见 应用维度配置扩展。查看是否因 GC 问题(Garbage Collection,简称 GC...

检测攻击类型说明和防护建议

当攻击者拿到代码执行权限后,可以通过新建线程的方式使RASP丢失运行环境的上下文,从而影响RASP的防御能力。您的服务器可能存在代码执行漏洞。请检查漏洞的位置并限制执行代码的功能。危险协议使用 若服务端进行访问的URL用户端可控,而...

问题分析 此类异常发生在应用创建了线程,如果线程因为异常未捕获而退出,在RuntimeInit中会捕获此类异常并死进程。具体异常的原因需要看日志附近其他log确定触发异常信息。解决方案 因为应用开启的线程抛出了异常未被捕获而导致抛出...

通过SDK使用通道服务

说明 如果增量数据超过7天(具体值和数据表的Stream的日志过期时间一致)没有消费,则数据会出现过期的情况,当Tunnel过期超过一段时间(默认7天)后,表格存储会禁用该Tunnel,即该Tunnel不能再用于消费数据。TunnelWorker的初始化需要...

为什么应用运行时进程突然消失了?

通常,从这个日志文件中即可查到Java虚拟机Crash时执行的线程或原因(必要时需要通过允许生成coredump文件进一步分析)。另外,在EDAS控制台应用的 基本信息 页面,应用设置 区域的 异常退出分析 右侧单击 开启,配合应用监控告警功能,...

SmsUp

设置异步线程池大小及任务队列的大小,还有无数据线程休眠时间 puller.setConsumeMinThreadSize(6);puller.setConsumeMaxThreadSize(16);puller.setThreadQueueSize(200);puller.setPullMsgThreadSize(1);和服务端联调问题时开启,平时无需...

通过SkyWalking上报Java应用数据

1.0.25->1.1.2 JSON GSON 2.8.x Vert.x 生态 Vert.x Eventbus 3.2+Vert.x Web 3.x 线程调度框架 Spring@Async 4.x and 5.x 缓存 Ehcache 2.x Kotlin Coroutine 1.0.1->1.3.x 插件开发 您可以参考 官方文档 自定义开发一个SkyWalking Java ...

通过SkyWalking上报Java应用数据

1.0.25->1.1.2 JSON GSON 2.8.x Vert.x 生态 Vert.x Eventbus 3.2+Vert.x Web 3.x 线程调度框架 Spring@Async 4.x and 5.x 缓存 Ehcache 2.x Kotlin Coroutine 1.0.1->1.3.x 插件开发 您可以参考 官方文档 自定义开发一个SkyWalking Java ...

OGG插件介绍

buildMaximumPoolSize 默认为buildCorePollSize两倍 可选 解析数据线程池最多线程数 writeCorePollSize 默认为配置table数量 可选 写入DataHub线程池最少线程数 writeMaximumPoolSize 默认为配置table数量 可选 写入DataHub线程池最多线程...

SmsReport

设置异步线程池大小及任务队列的大小,还有无数据线程休眠时间 puller.setConsumeMinThreadSize(6);puller.setConsumeMaxThreadSize(16);puller.setThreadQueueSize(200);puller.setPullMsgThreadSize(1);和服务端联调问题时开启,平时无需...

常见问题

问题汇总 组件启动失败 此类问题多数是由于组件JVM运行参数配置问题,例如机器可能没有很大的内存,而配置了较大的JVM内存或者较多的线程数量。解决方法:查看组件日志并调整相关参数即可解决。JVM内存涉及堆内存和直接内存。具体可参见 ...

接入阿里云JavaAgent上报的Java程序性能数据

您可以通过Logtail接入Continuous Profiler Agent上报的Java程序性能数据到全栈可观测应用中,进行可视化的性能监控和分析。前提条件 已创建全栈可观测实例。具体操作,请参见 创建实例。使用限制 Logtail为Linux Logtail 1.7及以上版本。...

测试分析及调优

如果是Java应用,就可以用jstack看出此线程正在执行的堆栈,看资源消耗在哪个方法上,查看源代码就知道问题所在;如果是c++应用,可以用gprof性能工具进行分析。如果CPU Sys非常高,可以用strace(Linux)看系统调用的资源消耗及时间。如果...

历史版本常见问题

PolarDB-X 1.0大量线程有可能在获取元数据时被阻塞导致业务SQL执行无响应 现象描述 当 PolarDB-X 1.0 里有多个逻辑库时,在控制台手动执行删库操作时,有概率导致 PolarDB-X 1.0 的元数据管理的工作程线程池被销毁,导致其它正常逻辑库的...

如何处理消息堆积

可参见 Java官方文档 判断线程的状态并根据具体问题修改业务逻辑。客户端堆栈信息可以通过以下方式获取:登录 云消息队列 RocketMQ 版 控制台 查看消费者状态,在客户端连接信息中查看 Java客户端堆栈信息。具体操作,请参见 查看消费者...

数据开发常见问题

因为分发线程调用大量getBlocks的rpc查询,所以为了避免NameNode由于分发线程压力过大,需要控制分发线程rpc的发送速度。例如,您可以在负载高的集群调整参数值,减小10或者5,对整体移动进度不会产生特别大的影响。dfs.balancer.getBlocks...

Java如何通过Jstack查看线程栈?

本文介绍使用 SAE 时,Java如何通过Jstack工具查看线程栈。问题现象 在 SAE 中,Java如何通过Jstack工具查看线程栈。问题原因 无。解决方案 通过执行 ps aux|grep java 命令,找到Java的进程ID。在 SAE 的 Webshell 中,执行 jstack 命令,...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
弹性公网IP 短信服务 人工智能平台 PAI 金融分布式架构 对象存储 物联网平台
新人特惠 爆款特惠 最新活动 免费试用