上一篇日志中,我简介了Zorka的Online reconfiguration的用法,可是没怎么介绍如何看到在线更改的效果,这里简单说说。

还是以之前的tomcat为例,我们在文件夹zorka\scripts\apache这里会看到tomcat.bsh,也就是tomcat相应的beanshell文件。我们之前点listTracerIncludes的时候,能够看到最以下例如以下图所看到的:


当我们打开tomcat.bsh文件的时候,能够看到其100行開始是这种内容:

if (zorka.boolCfg("tracer")) {
  tracer.exclude(
    "org.apache.naming.NamingContextBindingEnumeration",
    "org.apache.tomcat.jdbc.pool.**",
    "org.apache.juli.logging.**"
  );
}

非常明显,和上面界面中的结果是一一相应的,假设我们凝视掉中间一行,然后保存,再点击reload,再点击listTracerIncludes。就能够看到之前截图的内容变成了这样:


能够看到,org.apache.tomcat.jdbc.pool.**这一行确实没有了,我们用这样的方法就验证了确实能够实现Online reconfiguration。一个小问题。假设凝视掉最后一行呢?我们能够发现并没有起作用,原因事实上也非常easy:假设凝视掉最后一行,括号中最后一行多了一个逗号,应该是破坏了Beanshell的语法规则,所以Zorka选择不解析这个bsh文件。就简单总结这么多。

假设我们想学习Zorka的Online reconfiguration功能。应该从哪里入手呢?就应该看看Zorka怎么响应Reload这个MBean方法的,一步步往上推。就能够了解了。