private void WriteMessage(string level, string message, string stackTrace)
{
using (var fs = new FileStream(_logFileName, FileMode.Append, FileAccess.Write))
using (var sw = new StreamWriter(fs))
{
string blank = _buffer.Substring(0, _margin);
message = message.Replace("<br/>", "\r\n");
sw.WriteLine("{0}:{1:HH:mm:ss} - {2}", level, DateTime.Now, message);
if (!string.IsNullOrWhiteSpace(stackTrace))
{
using (var sr = new StringReader(stackTrace))
{
string line = sr.ReadLine();
while (line != null)
{
sw.Write(blank);
sw.WriteLine(line);
line = sr.ReadLine();
}
}
}
}
}