博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springboot运行时加载statsd-jvm-profiler
阅读量:6337 次
发布时间:2019-06-22

本文共 1300 字,大约阅读时间需要 4 分钟。

statsd-jvm-profiler是etsy开发的一个 JVM 代理 Profiler,其将Profile数据发送到 StatsD.

-javaagent加载

-javaagent:/usr/etsy/statsd-jvm-profiler/statsd-jvm-profiler.jar=server=statsdHost,port=statsdPort

运行时动态加载

将该jar包拷贝到spring boot工程的main resource目录下,然后

@Bean    public CommandLineRunner loadProfilerAgent(){        return new CommandLineRunner() {            @Override            public void run(String... strings) throws Exception {                ApplicationPid pid = new ApplicationPid();                try{                    com.sun.tools.attach.VirtualMachine vm = com.sun.tools.attach.VirtualMachine.attach(pid.toString());                    ClassLoader classLoader = getClass().getClassLoader();                    String profilerJarPath = classLoader.getResource("statsd-jvm-profiler-2.0.0.jar").getPath();                    String agentArgs = "server="+statsdHost+",port="+statsdPort;                    vm.loadAgent(profilerJarPath, agentArgs);                    vm.detach();                    System.out.println("Dynamically loaded StatsD JVM Profiler Agent...");                }catch (Exception e){                    e.printStackTrace();                }            }        };    }

内置httpServer

该agent内置了一个http server,默认端口为5005,可以访问如下几个path

graphite

在graphite里头,statsd-jvm-profiler前缀的gauges就是了。

doc

转载地址:http://rlaoa.baihongyu.com/

你可能感兴趣的文章
求高手,求解释
查看>>
[MSSQL]NTILE另类分页有么有?!
查看>>
winform datagridview 通过弹出小窗口来隐藏列 和冻结窗口
查看>>
Jquery闪烁提示特效
查看>>
最佳6款用于移动网站开发的 jQuery 图片滑块插件
查看>>
C++ String
查看>>
获取系统托盘图标的坐标及文本
查看>>
log4j Test
查看>>
HDU 1255 覆盖的面积(矩形面积交)
查看>>
SQL数据库无法附加,提示 MDF" 已压缩,但未驻留在只读数据库或文件组中。必须将此文件解压缩。...
查看>>
第二十一章流 3用cin输入
查看>>
在workflow中,无法为实例 ID“...”传递接口类型“...”上的事件“...” 问题的解决方法。...
查看>>
获取SQL数据库中的数据库名、所有表名、所有字段名、列描述
查看>>
Orchard 视频资料
查看>>
简述:预处理、编译、汇编、链接
查看>>
调试网页PAIP HTML的调试与分析工具
查看>>
路径工程OpenCV依赖文件路径自动添加方法
查看>>
玩转SSRS第七篇---报表订阅
查看>>
WinCE API
查看>>
SQL语言基础
查看>>