gpt4 book ai didi

java - 如何将日志写入 btrace 中的文件?

转载 作者:搜寻专家 更新时间:2023-11-01 02:54:36 26 4
gpt4 key购买 nike

我关注 btrace脚本。我想记录特定类中函数的进入和退出。

..
package com.sun.btrace.samples;

import com.sun.btrace.BTraceUtils;
import com.sun.btrace.Profiler;
import com.sun.btrace.annotations.*;
@BTrace class Profiling {
@Property
Profiler swingProfiler = BTraceUtils.Profiling.newProfiler();

@OnMethod(
clazz="com.pkg.classname",
method="/.*/")
void entry(@ProbeMethodName(fqn=true) String probeMethod) {
BTraceUtils.print("Entry" );
BTraceUtils.println(BTraceUtils.timestamp() );
BTraceUtils.println(probeMethod);
}

@OnMethod(
clazz="com.pkg.classname",
location=@Location(value=Kind.RETURN)
)
void exit(@ProbeMethodName(fqn=true) String probeMethod, @Duration long duration) {
BTraceUtils.print("Exit:" );
BTraceUtils.println(BTraceUtils.timestamp() );
BTraceUtils.println(probeMethod);
}

}

这会在控制台上给出输出。如何将结果写入文件? Btrace 不允许创建新对象。

(明显的解决方法是重定向到一个文件。另一种选择是使用 VisualVM btrace 插件 - 然后输出到 visualVM 窗口。请注意它是否可以处理非常大的输出 500Mb 左右。)

谢谢

最佳答案

您可以使用 BTrace 代理 ( http://kenai.com/projects/btrace/pages/UserGuide#btrace-agent ) 启动您的应用程序。然后您可以为代理指定 scriptOutputFile 参数,调用 println 等生成的所有输出将转到指定文件而不是标准输出。

关于java - 如何将日志写入 btrace 中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4142845/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com