各位游戏大佬大家好,今天小编为大家分享关于gg免root修改器特别_gg修改器有没有免root的内容,轻松修改游戏数据,赶快来一起来看看吧。
原文地址:https://mp.weixin./s/UXtSpRR82uMpeTAjRR10wg
线上项目遇到问题无法调试,线下又无法重现,难道只能加日志再重新发布么?有了这款神器,既可以线上调试,又可以实现热修复,推荐给大家!
Arthas是Alibaba开源的Java诊断工具,深受开发者喜爱。它采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。
为了还原一个真实的线上环境,我们将通过Arthas来对Docker容器中的Java程序进行诊断。
docker container cp arthas-boot.jar mall-tiny-arthas:/
docker exec -it mall-tiny-arthas /bin/bash
java -jar arthas-boot.jar
我们先来介绍一些Arthas的常用命令,会结合实际应用来讲解,带大家了解下Arthas的使用。
使用dashboard命令可以显示当前系统的实时数据面板,包括线程信息、JVM内存信息及JVM运行时参数。
查看当前线程信息,查看线程的堆栈,可以找出当前最占CPU的线程。
常用命令:
# 打印当前最忙的3个线程的堆栈信息
thread -n 3
# 查看ID为1都线程的堆栈信息
thread 1
# 找出当前阻塞其他线程的线程
thread -b
# 查看指定状态的线程
thread -state WAITING
查看当前JVM的系统属性,比如当容器时区与宿主机不一致时,可以使用如下命令查看时区信息。
sysprop |grep timezone
user.timezone Asia/Shanghai
查看JVM的环境属性,比如查看下我们当前启用的是什么环境的Spring Boot配置。
使用logger命令可以查看日志信息,并改变日志级别,这个命令非常有用。
比如我们在生产环境上一般是不会打印DEBUG级别的日志的,当我们在线上排查问题时可以临时开启DEBUG级别的日志,帮助我们排查问题,下面介绍下如何操作。
logger -c 21b8d17c --name ROOT --level debug
logger -c 21b8d17c --name ROOT --level info
查看JVM已加载的类信息,Search-Class的简写,搜索出所有已经加载到 JVM 中的类信息。
.macro.mall.*
sc -.macro.mall.mon.api.CommonResult
sc -d -.macro.mall.mon.api.CommonResult
查看已加载类的方法信息,Search-Method的简写,搜索出所有已经加载的类的方法信息。
.macro.mall.mon.api.CommonResult
sm -.macro.mall.mon.api.CommonResult getCode
反编译已加载类的源码,觉得线上代码和预期不一致,可以反编译看看。
.macro.mall.tiny.MallTinyApplication
jad --source-.macro.mall.tiny.MallTinyApplication
内存编译器,Memory Compiler的缩写,编译.java文件生成.class。
加载外部的.class文件,覆盖掉 JVM中已经加载的类。
实时监控方法执行信息,可以查看方法执行成功此时、失败次数、平均耗时等信息。
monitor -c .macro.mall.tiny.controller.PmsBrandController listBrand
方法执行数据观测,可以观察方法执行过程中的参数和返回值。
使用如下命令观察方法执行参数和返回值,-x表示结果属性遍历深度。
.macro.mall.tiny.service.impl.PmsBrandServiceImpl listBrand "{params,returnObj}" -x 2
尽管在线上环境热更代码并不是一个很好的行为,但有的时候我们真的很需要热更代码。下面介绍下如何使用jad/mc/redefine来热更新代码。
/**
* 品牌管理Controller
* Created by macro on 2019/4/19.
*/
@Api(tags = "PmsBrandController", description = "商品品牌管理")
@Controller
@RequestMapping("/brand")
public class PmsBrandController {
@Autowired
private PmsBrandService brandService;
private static final Logger LOGGER = LoggerFactory.getLogger(PmsBrandController.class);
@ApiOperation("获取指定id的品牌详情")
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ResponseBody
public CommonResult<PmsBrand> brand(@PathVariable("id") Long id) {
if(id<=0){
throw new IllegalArgumentException("id not excepted id:"+id);
}
return CommonResult.success(brandService.getBrand(id));
}
}
{
"timestamp": "2020-06-12T06:20:20.951+0000",
"status": 500,
"error": "Internal Server Error",
"message": "id not excepted id:0",
"path": "/brand/0"
}
/**
* 品牌管理Controller
* Created by macro on 2019/4/19.
*/
@Api(tags = "PmsBrandController", description = "商品品牌管理")
@Controller
@RequestMapping("/brand")
public class PmsBrandController {
@Autowired
private PmsBrandService brandService;
private static final Logger LOGGER = LoggerFactory.getLogger(PmsBrandController.class);
@ApiOperation("获取指定id的品牌详情")
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ResponseBody
public CommonResult<PmsBrand> brand(@PathVariable("id") Long id) {
if(id<=0){
// throw new IllegalArgumentException("id not excepted id:"+id);
return CommonResult.success(null);
}
return CommonResult.success(brandService.getBrand(id));
}
}
docker container cp /tmp/PmsBrandController.java mall-tiny-arthas:/tmp/
sc -d *PmsBrandController | grep classLoaderHash
mc -c 21b8d17c /tmp/PmsBrandController.java -d /tmp
redefine -c 21b8d17c //macro/mall/tiny/controller/PmsBrandController.class
{
"code": 200,
"message": "操作成功",
"data": null
}
项目源码地址:关注我私信回复【666】获取
以上就是关于gg免root修改器特别_gg修改器有没有免root的全部内容,游戏大佬们学会了吗?
怎么用gg修改器免root,下载软件:如何使用gg修改器免root 分类:免root版 1,774人在玩 GG修改器是一款非常实用的工具,它可以帮助用户修改游戏中的各种参数,从而获得更好的游戏体验。然而,传统的安装方式需要用户的设备进行root操作,这对于很多用户来说是一个不小的……
下载gg修改器免root当易网_怎么用gg修改器免root版 分类:免root版 5,798人在玩 各位游戏大佬大家好,今天小编为大家分享关于gg修改器免root当易网_怎么用gg修改器免root版的内容,轻松修改游戏数据,赶快来一起来看看吧。 3月4日消息,近日谷歌在最新的Android……
下载gg修改器怎样弄root,下载一个神奇的软件:gg修改器,轻松获得Root权限 分类:免root版 2,006人在玩 在Android手机上获取Root权限是许多用户都想要做的事情。但是,对于大多数人来说,这个过程通常是繁琐且需要专业知识的。现在有了gg修改器,一款功能强大而又易于使用的软件,您可……
下载gg修改器root是什么,下载软件:GG修改器Root 分类:免root版 3,680人在玩 如果你是一名Android手机用户,那么你可能知道root(安卓取得root权限)的重要性。而GG修改器Root就是一款可以帮助你实现这个目标的软件。它不仅可以让你在Android设备上获得root权……
下载gg修改器里root什么意思 分类:免root版 7,057人在玩 各位游戏大佬大家好,今天小编为大家分享关于gg修改器里root什么意思的内容,轻松修改游戏数据,赶快来一起来看看吧。 三色标记法是一种垃圾回收法,它可以让JVM不发生或仅短时间发……
下载gg修改器方舟无root_方舟GG修改器使用教程 分类:免root版 4,755人在玩 各位游戏大佬大家好,今天小编为大家分享关于gg修改器方舟无root_方舟GG修改器使用教程的内容,轻松修改游戏数据,赶快来一起来看看吧。 想体验方舟编译器的神奇吗?想体验用方舟编……
下载gg修改器能免root吗_gg修改器 免root可以用吗 分类:免root版 5,815人在玩 各位游戏大佬大家好,今天小编为大家分享关于gg修改器能免root吗_gg修改器 免root可以用吗的内容,轻松修改游戏数据,赶快来一起来看看吧。 IT之家了解到,“泰尔网测”App 是一款专……
下载gg修改器免root心碎_gg修改器怎样免root 分类:免root版 6,245人在玩 各位游戏大佬大家好,今天小编为大家分享关于gg修改器免root心碎_gg修改器怎样免root的内容,轻松修改游戏数据,赶快来一起来看看吧。 一、为什么写这个教程? 荒野无灯开发的N1……
下载gg修改器应用宝root权限,下载gg修改器应用宝root权限软件,助力游戏体验 分类:免root版 4,264人在玩 现在的手机游戏越来越多,玩家们在游戏中追求更加高质量的游戏体验,但是有些游戏里的道具需要充值才能得到,这对于许多玩家来说是不可接受的。为此,现在市面上出现了很多的辅助工……
下载gg修改器怎么下免root_gg修改器免登录 分类:免root版 5,967人在玩 各位游戏大佬大家好,今天小编为大家分享关于gg修改器怎么下免root_gg修改器免登录的内容,轻松修改游戏数据,赶快来一起来看看吧。 1月8日《火影忍者》手游将开启守护不删档,此款……
下载