using System; using System.Collections.Generic; using System.Linq; using System.Text; using log4net.Util; using System.Diagnostics; namespace HeuristicLab.Hive.Tracing { class MethodCallPatternConverter: PatternConverter { protected override void Convert(System.IO.TextWriter writer, object state) { StackTrace callStack = new StackTrace(); int i = 1; while (i < callStack.FrameCount && !callStack.GetFrame(i).GetMethod().DeclaringType.FullName.StartsWith("HeuristicLab.Hive")) { i++; } StackFrame stack = new StackFrame(i); var method = stack.GetMethod(); if (method != null) { writer.Write(stack.GetMethod().Name); } } } }