#28
One of the things I'm trying to use this lib for is to figure out the execution time of some methods by running Stopwatch on the Entry/Exit, but what I've realised is happening is that due to the OnExit being executed in the try instead of finally (I THINK), it results in logs like:
[05:20:57 INF] Invocation of Forward started at 08/11/2020 05:20:57
[05:20:57 INF] Invocation at Forward finished at 08/11/2020 05:20:57 and took 318ms to complete
[05:20:58 INF] Hello World 08/11/2020 05:20:58
So I think issue #28 is still an issue.
This is running on the latest version:
Fody 6.2.0
MethodDecorator 1.1.1
.NET Core 3.1 project (AWS .NET Core Lambda)
public class Banana
{
[HandlerInterceptor]
public async Task<string> DoSomething()
{
var result = await Task.Delay(2000).ContinueWith(x => "Hello World");
if (result == "Hello World")
{
Console.WriteLine("Hello World!");
Console.WriteLine(DateTime.UtcNow);
}
else
{
Console.WriteLine("got nothing...");
Console.WriteLine(DateTime.UtcNow);
}
return result;
}
[AttributeUsage(AttributeTargets.Method | AttributeTargets.Constructor | AttributeTargets.Assembly | AttributeTargets.Module)]
[ExcludeFromCodeCoverage]
public class HandlerInterceptorAttribute : Attribute, IMethodDecorator
{
private readonly Stopwatch stopwatch = new Stopwatch();
public void Init(object instance, MethodBase method, object[] args)
{
}
public void OnEntry()
{
stopwatch.Restart();
Console.WriteLine("Start");
Console.WriteLine(DateTime.UtcNow);
}
public void OnExit()
{
stopwatch.Stop();
Console.WriteLine("End");
Console.WriteLine(stopwatch.ElapsedMilliseconds);
}
public void OnException(Exception exception)
{
}
}
}
The output of this is:
Start
8/11/2020 6:11:39 AM
End
0
Hello World!
8/11/2020 6:11:41 AM
#28
One of the things I'm trying to use this lib for is to figure out the execution time of some methods by running Stopwatch on the Entry/Exit, but what I've realised is happening is that due to the OnExit being executed in the
tryinstead offinally(I THINK), it results in logs like:So I think issue #28 is still an issue.
This is running on the latest version:
Fody 6.2.0
MethodDecorator 1.1.1
.NET Core 3.1 project (AWS .NET Core Lambda)
The output of this is: