Logging changes.
This commit is contained in:
@@ -50,7 +50,7 @@ namespace MarketData.Helper
|
||||
Index=-1;
|
||||
ManualResetEvent[] resetEvents = new ManualResetEvent[MaxThreads];
|
||||
for (int eventIndex = 0; eventIndex < resetEvents.Length; eventIndex++)resetEvents[eventIndex] = new ManualResetEvent(true);
|
||||
MDTrace.WriteLine(String.Format("[UpdateCompanyProfile] Queuing company profile fetches ..."));
|
||||
MDTrace.WriteLine(String.Format("Queuing company profile fetches ..."));
|
||||
DateTime modified=DateTime.Now;
|
||||
while (true)
|
||||
{
|
||||
@@ -58,7 +58,7 @@ namespace MarketData.Helper
|
||||
ManualResetEvent[] busyEvents=GetBusyEvents(resetEvents);
|
||||
if (null == PeekQueueItem() && 0==busyEvents.Length)
|
||||
{
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[UpdateCompanyProfile] queue contains {0} items, busy events {1}, all done.",0,busyEvents.Length));
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("Queue contains {0} items, busy events {1}, all done.",0,busyEvents.Length));
|
||||
break;
|
||||
}
|
||||
for (int index = 0; index < availableEvents.Length; index++)
|
||||
|
||||
@@ -62,8 +62,8 @@ namespace MarketData.Helper
|
||||
{
|
||||
ManualResetEvent[] busyEvents=GetBusyEvents(events);
|
||||
if(busyEvents.Length!=0)
|
||||
{
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("Resizing event queue to {0}",busyEvents.Length));
|
||||
{ // The following trace will skip 3 frames to show the caller of this method in the log
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("Resizing event queue to {0}",busyEvents.Length),3);
|
||||
ManualResetEvent[] resizedEvents=new ManualResetEvent[busyEvents.Length];
|
||||
Array.Copy(busyEvents, resizedEvents, busyEvents.Length);
|
||||
return resizedEvents;
|
||||
@@ -77,12 +77,12 @@ namespace MarketData.Helper
|
||||
for (int index = 0; index < resetEvents.Length; index++)
|
||||
{
|
||||
if (!resetEvents[index].WaitOne(0))
|
||||
{
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("Event {0} is still doing work",resetEvents[index].SafeWaitHandle.DangerousGetHandle().ToString()));
|
||||
{ // Notice the magic number 3 at the end of the trace. The is the skip frames because we want the caller of this method to show up in the log
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("Event {0} is still doing work",resetEvents[index].SafeWaitHandle.DangerousGetHandle().ToString()),3);
|
||||
availableEvents.Add(resetEvents[index]);
|
||||
}
|
||||
}
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("The event queue has {0} busy slots",availableEvents.Count));
|
||||
} // The following trace will skip 3 frames to show the caller of this method in the log
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("The event queue has {0} busy slots",availableEvents.Count),3);
|
||||
return availableEvents.ToArray();
|
||||
}
|
||||
|
||||
@@ -92,8 +92,8 @@ namespace MarketData.Helper
|
||||
for (int index = 0; index < resetEvents.Length; index++)
|
||||
{
|
||||
if (resetEvents[index].WaitOne(0))
|
||||
{
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("Event {0} is available for work",resetEvents[index].SafeWaitHandle.DangerousGetHandle().ToString()));
|
||||
{ // @ the end of this trace notice the magic number 3. This is the skip frames for the stack trace. We want the caller of this method to show up in the log
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("Event {0} is available for work",resetEvents[index].SafeWaitHandle.DangerousGetHandle().ToString()),3);
|
||||
availableEvents.Add(resetEvents[index]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -205,7 +205,7 @@ namespace MarketData.Helper
|
||||
}
|
||||
finally
|
||||
{
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[UpdatePricesBigCharts]End, total took {0}(ms)",profiler.End()));
|
||||
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[UpdatePricesYahooSweep]End, total took {0}(ms)",profiler.End()));
|
||||
}
|
||||
}
|
||||
public bool UpdatePricesAsOfSymbol(String symbol,DateTime asOf) // get prices from BigCharts
|
||||
|
||||
@@ -65,10 +65,10 @@ namespace MarketData
|
||||
/// <summary>WriteLine - Writes a line of text to trace log.</summary>
|
||||
/// <param name="message">string content of message to write.</param>
|
||||
/// <returns>void</returns>
|
||||
public static void WriteLine(LogLevel logLevel,string message)
|
||||
public static void WriteLine(LogLevel logLevel,string message,int skipFrames=2)
|
||||
{
|
||||
if(MDTrace.logLevel<logLevel)return;
|
||||
Trace.WriteLine(GetThreadRep()+GetLogLevelRep()+"["+DateTime.Now.ToString()+"]"+" "+GetMethodInfo()+message);
|
||||
Trace.WriteLine(GetThreadRep()+GetLogLevelRep()+"["+DateTime.Now.ToString()+"]"+" "+GetMethodInfo(skipFrames)+message);
|
||||
Console.WriteLine(message);
|
||||
Flush();
|
||||
}
|
||||
@@ -76,10 +76,10 @@ namespace MarketData
|
||||
/// <summary>WriteLine - Writes a line of text to trace log.</summary>
|
||||
/// <param name="message">string content of message to write.</param>
|
||||
/// <returns>void</returns>
|
||||
public static void WriteLine(LogLevel logLevel,ConsoleColor consoleColor,string message)
|
||||
public static void WriteLine(LogLevel logLevel,ConsoleColor consoleColor,string message,int skipFrames=2)
|
||||
{
|
||||
if(MDTrace.logLevel<logLevel)return;
|
||||
Trace.WriteLine(GetThreadRep()+GetLogLevelRep()+"["+DateTime.Now.ToString()+"]"+" "+GetMethodInfo()+message);
|
||||
Trace.WriteLine(GetThreadRep()+GetLogLevelRep()+"["+DateTime.Now.ToString()+"]"+" "+GetMethodInfo(skipFrames)+message);
|
||||
ConsoleColor currentColor=Console.ForegroundColor;
|
||||
Console.ForegroundColor = consoleColor;
|
||||
Console.WriteLine(message);
|
||||
@@ -131,10 +131,11 @@ namespace MarketData
|
||||
}
|
||||
/// <summary>GetMethodInfo - Returns information about the calling method 2 frames up.</summary>
|
||||
/// <returns>String</returns>
|
||||
private static String GetMethodInfo()
|
||||
private static String GetMethodInfo(int skipFrames=2)
|
||||
{
|
||||
StringBuilder sb=new StringBuilder();
|
||||
StackFrame frame=new StackFrame(2,true);
|
||||
StackFrame frame=new StackFrame(skipFrames,true);
|
||||
if(null==frame)return $"No Stack Frame at:{skipFrames}";
|
||||
MethodBase methodBase=frame.GetMethod();
|
||||
ParameterInfo[] parameters=methodBase.GetParameters();
|
||||
sb.Append("[").Append(methodBase.DeclaringType.FullName).Append("::").Append(methodBase.Name).Append("(");
|
||||
|
||||
Reference in New Issue
Block a user