跟踪脚本

翻译至原文

跟踪脚本定义应跟踪什么和如何跟踪。 它们是普通的java注解类。 注解指定应在何处放置探针,以及应使哪些数据可用于跟踪操作。

脚本元素

  • Probe Point 执行一组跟踪语句的“location”或“event”。 探测点是我们想要执行一些跟踪语句的感兴趣的“location”或“event”。

  • Trace Actions或Actions 每当探测器“触发”时执行的跟踪语句。

  • Action方法 在静态方法类中定义的,BTrace在探测器触发时执行的跟踪语句。这样的方法被称为“Action”方法。

限制

为了确保注入代码的安全性,强制执行以下限制:

  • BTrace禁止new类、数组,、抛异常、捕获异常
  • 禁止调用除com.sun.btrace.BTraceUtil类的其他实例方法以及静态方法
  • BTrace1.2前不能有实例字段和方法,只能有无返回值的静态方法,所有字段也都必须是静态的。
  • 禁止定义外部、内部、匿名, 本地类
  • 禁止有同步块和同步方法
  • 禁止有循环(for, while, do..while)
  • 禁止实现接口, 不能扩展类,直接超类必须是java.lang.Object
  • 禁止使用assert语句, 不能使用class字面值
  • 禁止使用class字节码
Copyright © www.gitbook.com/@vitzhou 2016 all right reserved,powered by Gitbook该文件修订时间: 2018-02-07 08:15:24

results matching ""

    No results matching ""