在 Yammer 中获取经过的时间
Get time Elapsed in Yammer
我正在尝试获取函数调用经过的时间并将它们获取到 JMX 端口。我发现 yammer 适合这个。虽然计数器很简单,但使用计时器会让人感到困惑。
private Timer executeTimer;
TimerContext timerContext;
obj.timerContext = obj.executeTimer.time();
.
.
.
public void f()
{
//start timer
f2();
//stop timer
//display time difference
}
我知道这对你们中的一些人来说太琐碎了,请耐心等待。我是 yammer 的新手,发现它混淆了要使用的函数和 class。另外,如果您能告诉我何时使用 TimerContext 以及何时使用 Timer,那将非常有帮助。
首先,您需要初始化ExecuteTimer实例。
executeTimer=Metrics.newTimer(CLASSNAME.class, "Metrics_Name", TimeUnit.MILLISECONDS,TimeUnit.SECONDS);
之后,这样做:-
private Timer executeTimer;
TimerContext timerContext;
obj.timerContext = obj.executeTimer.time();
.
.
.
public void f()
{
timerContext = executeTimer.time();//start timer
f2();
timerContext.stop();//stop timer
//All stats are sent to JMX port by default. You can open console to view them
}
为了深入了解这些东西,这里是实际代码。
我正在尝试获取函数调用经过的时间并将它们获取到 JMX 端口。我发现 yammer 适合这个。虽然计数器很简单,但使用计时器会让人感到困惑。
private Timer executeTimer;
TimerContext timerContext;
obj.timerContext = obj.executeTimer.time();
.
.
.
public void f()
{
//start timer
f2();
//stop timer
//display time difference
}
我知道这对你们中的一些人来说太琐碎了,请耐心等待。我是 yammer 的新手,发现它混淆了要使用的函数和 class。另外,如果您能告诉我何时使用 TimerContext 以及何时使用 Timer,那将非常有帮助。
首先,您需要初始化ExecuteTimer实例。
executeTimer=Metrics.newTimer(CLASSNAME.class, "Metrics_Name", TimeUnit.MILLISECONDS,TimeUnit.SECONDS);
之后,这样做:-
private Timer executeTimer;
TimerContext timerContext;
obj.timerContext = obj.executeTimer.time();
.
.
.
public void f()
{
timerContext = executeTimer.time();//start timer
f2();
timerContext.stop();//stop timer
//All stats are sent to JMX port by default. You can open console to view them
}
为了深入了解这些东西,这里是实际代码。