如何使用Java Agents进行分析

如何使用Java Agents进行分析

Java系列 1年前 (2021-10-10) 浏览: 204 评论: 0

Java agents(代理)是一种特殊类型的类,通过使用Java Instrumentation API,它可以拦截JVM上运行的应用程序,修改它们的字节码。Java代理不是一项新技术。相反,它们从Java5开始就存在了。但即使在这段时间之后,许多开发人员仍然对这个特性有误解,其他人甚至不知道。 在本文中,我们通过向您提供有关Java agents的快速指南来纠正这种情况。您将了解什么是Java

使用Byte Buddy开发Java agent功能

使用Byte Buddy开发Java agent功能

Java系列 1年前 (2021-09-21) 浏览: 1069 评论: 0

虽然Java初学者很快就学会了键入public static void main来运行他们的应用程序,但即使是经验丰富的开发人员也常常不知道JVM对Java进程的另外两个入口点的支持:premain和agentmain方法。这两种方法都允许所谓的Java代理在驻留在自己的jar文件中时对现有Java程序作出贡献,即使主应用程序没有显式链接。这样,就可以完全独立于承载Java代理的应用程序开发、发布

什么是Java Agents代理?

什么是Java Agents代理?

Java系列 1年前 (2021-09-18) 浏览: 159 评论: 0

Java代理Agents通过提供使我们能够侵入JVM中正在运行的Java程序的服务,在最底层工作。Java的这一强大但不可思议的部分具有在错误操作时使JVM崩溃的能力。本文简要介绍了这个概念,并介绍了它的工作原理。 表示Java Agents的类显然只不过是Java API库中的任何其他类。但是,让它们与众不同的是,它们遵循某种约定,这种约定使Java代码能够拦截JVM中运行的另一个应用程序。其目

使用Byte Buddy生成运行时代码

使用Byte Buddy生成运行时代码

Java系列 1年前 (2021-09-11) 浏览: 670 评论: 0

Java平台的一个经常被忽略的特性是在JVM的解释器或即时(JIT)编译器执行程序之前修改程序字节码的能力。虽然此功能由工具使用,例如进行对象关系映射的探查器和库,但应用程序开发人员很少使用它。这代表了未开发的潜力,因为在运行时生成代码允许轻松实现跨领域问题,如日志记录或安全性,有时以模拟或编写性能数据收集代理的形式更改第三方库的行为。 目前有三个主要的库用于生成字节码: ASM cglib Ja

Java Agent:动态修改字节码

Java Agent:动态修改字节码

Java系列 1年前 (2021-09-07) 浏览: 589 评论: 0

假设您有一个在生产环境中运行的应用程序。每隔一段时间,它就会进入中断状态,错误很难重现,您需要从应用程序中获得更多信息。 那么你想知道解决方案吗? 您可以做的是动态地将一些代码集附加到应用程序中,并仔细地重写它,以便代码转储您可以记录的其他信息,或者您可以将应用程序阶段转储到文本文件中。Java为我们提供了使用Java Agent实现这一点的工具。 你有没有想过我们的Java代码是如何在IDE中进

使用Byte Buddy轻松实现Java Agent

使用Byte Buddy轻松实现Java Agent

Java系列 1年前 (2021-08-19) 浏览: 553 评论: 0

Java agent是在另一个Java应用程序(“目标”应用程序)启动之前执行的Java程序,为该agent提供修改目标应用程序或其运行环境的机会。在本文中,我们将从基础知识开始,使用字节码操作工具Byte Buddy实现高级代理。 在最基本的用例中,Java agent设置应用程序属性或配置特定的环境状态,从而使代理能够充当可重用和可插入的组件。下面的示例描述了这样一个代理agent,它设置了可

Java Instrumentation API使用指南

Java Instrumentation API使用指南

Java系列 1年前 (2021-08-17) 浏览: 475 评论: 0

在本文中,我们将讨论Java Instrumentation API。它提供了向现有编译的Java类添加字节码的能力。 我们还将讨论java代理以及如何使用它们为代码提供工具。 我们将使用工具构建一个应用程序。 我们的应用程序将包括两个模块: 1. 允许我们取款的ATM应用程序 2. 还有一个Java代理,它允许我们通过测量投入的时间和花费的金钱来测量ATM的性能 Java agent将修改ATM

Java在线诊断利器之Arthas

Java在线诊断利器之Arthas

Java系列 3年前 (2020-02-13) 浏览: 3348 评论: 0

一. 简介 Arthas是阿里在2019年9月份开源的一款java在线诊断工具,能够分析、诊断、定位java应用问题,例如:jvm信息、线程信息、搜索类中的方法、 跟踪代码执行、观测方法的入参和返回参数等等。 Arthas最大的特点是能在不修改代码和不需要重新发布的情况下,对业务问题进行诊断,包括查看方法调用的出参入参、异常、监测方法执行耗时、类加载信息等,大大提升线上问题排查效率。 二. 适用场

登录

忘记密码 ?

切换登录

注册