日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java agent_GitHub - dingjs/javaagent: 基于javaagent开发的APM工具,收集方法的执行次数和执行时间,定时输出成json格式的日志。...

發布時間:2025/3/20 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java agent_GitHub - dingjs/javaagent: 基于javaagent开发的APM工具,收集方法的执行次数和执行时间,定时输出成json格式的日志。... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Javaagent

概述

javaagent是一個簡單優雅的java agent,利用java自帶的instrument特性+javassist字節碼編輯技術,實現了無侵入的方法級性能監控。相比于NewRelic或者開源的pinpoint,以及阿里的arthas,本工具主打的是簡單,我們只記錄每個方法的執行次數和時間,并輸出到json格式的日志文件中。基于javaagent的日志,你可以使用嚴麗同學開發的agent日志分析工具進行分析查詢,也可以使用在線日志分析器,或者可以自己去寫分析器,這樣可以讓你快速定位生產環境的性能瓶頸。

集成

java啟動參數中就有javaagent,你只需要在JAVA_OPTS中加入-javaagent:/opt/javaagent/javaagent.jar=/opt/javaagent/agent.properties就實現了方法級監控。其中=前指定的是jar包的路徑,=后指定的是對agent的一些配置參數。

agent.properties說明

# 需要監控的包,多個包用分號分隔

agent.include.package=com.XXX

# 不需要監控的包,多個包用分號分隔。 需要監控的包-不需要監控的包就是真正要監控的包

agent.exclude.package=

# 日志文件,會自動增加日期后綴

agent.log.file=d\:\\agent.log

# 日志輸出周期

agent.log.interval.seconds=600

# 不需要監控的類的正則表達式

agent.exclude.class.regex=

# 是否記錄平均時間

agent.log.avg.execute.time=false

# 默認不需要監控的類的正則表達式

agent.exclude.class.regex.default=.*EnhancerByCGLIB.*;.*FastClassByCGLIB.*

# 記錄方法的耗時時是采用nanoTime,還是currentTimeMillis,nanoTime更準確,但是會耗時一些

agent.log.nano=true

agent日志分析器使用

agent日志分析器是我同事嚴麗使用SpringBoot+h2數據庫開發的分析工具,除了基礎功能,對于有sql能力的同學,你可以直接使用console登錄后,直接寫sql進行統計,你可以按自己想要的維度來進行處理。

JDBC URL: jdbc:h2:mem:~/h2test

USer Name : sa

Password : 空

登錄后,你就可以盡情的寫sql了。

歡迎關注我的公眾號

程序員阿水

總結

以上是生活随笔為你收集整理的java agent_GitHub - dingjs/javaagent: 基于javaagent开发的APM工具,收集方法的执行次数和执行时间,定时输出成json格式的日志。...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。