jvm-sandbox使用
基础使用参考:https://www.cnblogs.com/juno3550/p/16407018.html
(一)安装沙箱,最新的应该是1.4.0
1、下载最新版本的JVM-SANDBOX:wget http://ompc.oss-cn-hangzhou.aliyuncs.com/jvm-sandbox/release/sandbox-stable-bin.zip 2、解压:unzip sandbox-stable-bin.zip 3、安装:./install-local.sh -p /export/opt/app/jvm-sandbox 安装成功: VERSION=1.3.3 PATH=/export/opt/app/jvm-sandbox/sandbox install sandbox successful.
(二),写切面代码,添加依赖
<dependency> <groupId>com.alibaba.jvm.sandbox</groupId> <artifactId>sandbox-module-starter</artifactId> <version>1.4.0</version> </dependency> <dependency> <groupId>com.alibaba.jvm.sandbox</groupId> <artifactId>sandbox-api</artifactId> <version>1.4.0</version> </dependency>
onClass是你要监控的的类,onBehavior是你要监控的方法
(三)、应用
3.1、把代码所在应用打包,打出来的包有三个,用以-jar-with-dependencies结尾的这个:sandbox-service-0.0.1-SNAPSHOT-jar-with-dependencies.jar
3.2、把sandbox-service-0.0.1-SNAPSHOT.jar上传到sandbox的按照目录下的sandbox-module目录下,这个目录是sandbox的用户目录,
3.3、进入到安装目录的bin目录下,然后找到你要监控的应用的进程ID,然后执行 ./sandbox.sh -p 10231 -d 'insBill-debug-watch/dataNameUtil-getCustPrimName-test',,,-p后面是要监控的应用的进程ID,-d 后面跟的是代码里的@Information注解的ID,及注解@Command的值,用/连接,
3.4、执行完如果不报错,可以使用命令./sandbox.sh -p 10231 -l 查看,第一个就是自定义的
常用的几个命令:
./sandbox.sh -p 10231 -S
./sandbox.sh -p 10231 -d 'insBill-debug-watch/dataNameUtil-getCustPrimName-test'
./sandbox.sh -p 10231 -l
./sandbox.sh -p 10231 -f
3.5、操作一下系统,让你监控的那个方法执行一下,然后查看你监控的那个应用的日志,可以在应用的日志中看到你在sandbox项目中添加的日志信息
(四):其他
问题1:一直用的好好的,重新传了下代码,重新启动就这样了,这样就加载不到自定义的module了,
解决方案:可以去默认的日志文件里查看报错信息啊
日志地址,可以查安装目录下cfg目录里的配置文件
官方文档:https://github.com/alibaba/jvm-sandbox/wiki