On 23/06/2014 14:26, Davide Giannella wrote:
> On 23/06/2014 13:57, Michael Dürig wrote:
>> +1 in general. However,
>>
>> - although it results in nice code on the client side, I'm a bit
>> reluctant about putting all the code into the instance initialiser.
> it was my concern as well. But don't see that much of a difference from
> something
>
> timer = new Timer("foobar");
> timer.start();
> // blabla
> timer.trackTime();
>
>> - how about reusing org.apache.jackrabbit.oak.stats.Clock instead of
>> using Guava's Stopwatch? If necessary we could still implement Clock
>> based on Stopwatch.
> Didn't know about it. Will have a look and amend accordingly.
>
>> - Timer might not be the best name for the class. Should probably
>> better be something with "Log" in its name
> It was an example. It could be LogTimer if you prefer or whatever. Don't
> mind the name and I'm very bad at it :)
Had time on train to work a bit on it.

here's a the final class

http://goo.gl/xUcPdY

The idea behind it is to have something for tracking time like

// ...
StopwatchLogger sl = new StopwatchLogger(FooBar.class);
// ...

public void foo() {
  sl.start();
  // perform all sort of things
  sl.split("performed some operations");
  // perform other things
  sl.stop("operation completed");
}

then by setting in logs the debug for o.a.j.oak.stats.StopwatchLogger
should do the trick to have some "gross" numbers around performances.

If ok, I'll create an issue an commit to trunk.

thoguhts?

Cheers
Davide

Reply via email to