public void Dispose() { if (!isDisposed) { Trace.Dispose(); isDisposed = true; } }
public IEnumerable <IAdvice> Advise(MethodInfo method) { yield return(Advice.Basic.Around(new Func <object, object[], Func <object>, object>((_Instance, _Arguments, _Body) => { var _trace = new Trace(method, _Arguments.Select(_Argument => _Argument.ToString()).ToArray()); try { var _return = _Body(); _trace.Dispose(_return.ToString()); return _return; } catch (Exception exception) { _trace.Dispose(exception); throw; } }))); }
public static void Dispose() { Log?.Dispose(); Trace?.Dispose(); Status?.Dispose(); Data?.Clear(); Settings?.Clear(); Injector?.Dispose(); }
public void DisposeTrace() { if (_trace == null) { return; // exit here if trace has already been disposed } _trace.OnEvent -= OnTraceEventInternal; _trace.Drop(); _trace.Dispose(); _trace = null; }
public void DisposeTrace() { if (_trace == null) { return; // exit here if trace has already been disposed } _trace.OnEvent -= OnTraceEventInternal; try { _trace.Drop(); } catch (Exception ex) { // just log any error, don't rethrow as we are trying to stop the trace anyway Log.Error(ex, "{Class} {Method} Exception while dropping query trace {message}", "QueryTraceEngine", "DisposeTrace", ex.Message); } _trace.Dispose(); _trace = null; }