其实有点承上文,
我的需求是想控制Logstash(后称LS)这个东西,
它是Ruby写的东西,然后Run在JVM上面(JRuby),
因为有些状况,我想要侵入Logstash正在运行的JVM,
我想要控制它的Thread执行的速度,
在某些情况下,我必须要让LS慢下来不要跑这么快。
我一开始是想透过我的程式当作进入点,
再导向LS主程序,这样我就可以控制了,
但尴尬的是我不懂Ruby,所以也就不晓得怎么卡进去了。
后来我透过JMX,也看不出哪里可以让我插入执行的地方。
然后我又知道BTrace这东西,所以想利用它ASM的原理来完成我的需求。
我主要是不想动LS任何东西,就可以进入它的JVM做事情,
不晓得版上的大大对于这种需求有没有建议的方式?