init
This commit is contained in:
81
ContosoUniversity.Logging/Logger.cs
Normal file
81
ContosoUniversity.Logging/Logger.cs
Normal file
@@ -0,0 +1,81 @@
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Text;
|
||||
|
||||
namespace ContosoUniversity.Logging
|
||||
{
|
||||
public class Logger : ILogger
|
||||
{
|
||||
|
||||
public void Information(string message)
|
||||
{
|
||||
Trace.TraceInformation(message);
|
||||
}
|
||||
|
||||
public void Information(string fmt, params object[] vars)
|
||||
{
|
||||
Trace.TraceInformation(fmt, vars);
|
||||
}
|
||||
|
||||
public void Information(Exception exception, string fmt, params object[] vars)
|
||||
{
|
||||
Trace.TraceInformation(FormatExceptionMessage(exception, fmt, vars));
|
||||
}
|
||||
|
||||
public void Warning(string message)
|
||||
{
|
||||
Trace.TraceWarning(message);
|
||||
}
|
||||
|
||||
public void Warning(string fmt, params object[] vars)
|
||||
{
|
||||
Trace.TraceWarning(fmt, vars);
|
||||
}
|
||||
|
||||
public void Warning(Exception exception, string fmt, params object[] vars)
|
||||
{
|
||||
Trace.TraceWarning(FormatExceptionMessage(exception, fmt, vars));
|
||||
}
|
||||
|
||||
public void Error(string message)
|
||||
{
|
||||
Trace.TraceError(message);
|
||||
}
|
||||
|
||||
public void Error(string fmt, params object[] vars)
|
||||
{
|
||||
Trace.TraceError(fmt, vars);
|
||||
}
|
||||
|
||||
public void Error(Exception exception, string fmt, params object[] vars)
|
||||
{
|
||||
Trace.TraceError(FormatExceptionMessage(exception, fmt, vars));
|
||||
}
|
||||
|
||||
public void TraceApi(string componentName, string method, TimeSpan timespan)
|
||||
{
|
||||
TraceApi(componentName, method, timespan, "");
|
||||
}
|
||||
|
||||
public void TraceApi(string componentName, string method, TimeSpan timespan, string fmt, params object[] vars)
|
||||
{
|
||||
TraceApi(componentName, method, timespan, string.Format(fmt, vars));
|
||||
}
|
||||
public void TraceApi(string componentName, string method, TimeSpan timespan, string properties)
|
||||
{
|
||||
string message = String.Concat("Component:", componentName, ";Method:", method, ";Timespan:", timespan.ToString(), ";Properties:", properties);
|
||||
Trace.TraceInformation(message);
|
||||
}
|
||||
|
||||
private static string FormatExceptionMessage(Exception exception, string fmt, object[] vars)
|
||||
{
|
||||
// Simple exception formatting: for a more comprehensive version see
|
||||
// http://code.msdn.microsoft.com/windowsazure/Fix-It-app-for-Building-cdd80df4
|
||||
var sb = new StringBuilder();
|
||||
sb.Append(string.Format(fmt, vars));
|
||||
sb.Append(" Exception: ");
|
||||
sb.Append(exception.ToString());
|
||||
return sb.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user