[jvm-sandbox] 多个agent并用
生活随笔
收集整理的這篇文章主要介紹了
[jvm-sandbox] 多个agent并用
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
背景:某些需求導(dǎo)致會同時(shí)使用 jvm-sandbox-repeater 和 chaosblade-exec-jvm 兩個基于jvm-sandbox的agent 同時(shí)注入到j(luò)ava程序中
嘗試
jvm-sanbox版本(后面簡稱sandbox)
- jvm-sandbox-repeater 2.1
- chaosblade-exec-jvm 3.1
兩個agent先后attach,只能attach成功第一個,第二個會失敗,并且?guī)缀鯖]有什么日志。
解決辦法
jvm-sandbox的最新文檔中看到支持多租戶,我們在官方的釘釘群也咨詢過,如果兩個agent的sanbox版本都是3.x,應(yīng)該是可以同時(shí)工作的。
后來了解到3.x版本之后的sandbox才支持多租戶,也就是說在啟動sandbox的時(shí)候加上 --namespace 的參數(shù)才能實(shí)現(xiàn)自定義租戶名,否則會使用 default 這個租戶。
- jvm-sandbox-repeater 升級到sandbox版本為1.3.3,并修改了啟動腳本(attach模式可以指定namespace,但是perman模式?jīng)]找到)
- chaosblade-exec-jvm 是通過 chaosblade 命令行工具啟動的,namespace被硬編碼到了chaosblade程序中,所以需要修改代碼,并重新編譯
做完上述工作之后,兩個agent可以正常attach。
對于同一個庫,怎么確定兩個agent是否能同時(shí)工作呢?
看切點(diǎn),切的更上層的先被執(zhí)行到,切的更底層的不會被執(zhí)行。
希望對遇到同樣場景的同學(xué)有所幫助。
總結(jié)
以上是生活随笔為你收集整理的[jvm-sandbox] 多个agent并用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一个中年SAP自由职业者的2020年终总
- 下一篇: 21M的虚拟机VMware Workst