1

Windows 7 Enterprise で Java 1.8 を使用して btrace v.1.3 (20150516) を実行しようとしていますが、多くの問題があります。

私の btrace スクリプトでは、次を使用して集計を作成しています。

private static Aggregation methodDuration = Aggregations
   .newAggregation(AggregationFunction.AVERAGE);

集計の作成はサイレントに失敗し、後続の呼び出しはそれにアクセスしようとして NullPointerException をスローしています。

ストックプロファイリングの例を実行すると、ほぼ同じ問題が発生します https://github.com/jbachorik/btrace/blob/master/samples/Profiling.java

ただし、今回はエラー メッセージが表示されます。BTraceScript.java:131:instance 変数は許可されていません。

その例の私のbtraceコードは次のようになります

@BTrace
public class BTraceScript {
. . .
131 @Property 
132 Profiler profiler = BTraceUtils.Profiling.newProfiler(); 
133 
134 @OnMethod(clazz="com.vgrazi.btrace.SynchronizationExample", method="/.*/") 
135    void entry(@ProbeMethodName(fqn=true) String probeMethod) { 
136    BTraceUtils.Profiling.recordEntry(profiler, probeMethod); 
137 }

参考までに、Java 8 を使用する Mac でも試していますが、少し進んでいますが、まだ正しく動作していません。

4

1 に答える 1

1

これはhttps://github.com/jbachorik/btrace/issues/129が原因です

最新の BTrace (当時 1.3.3) を使用してください。

于 2015-10-07T21:37:28.493 に答える