- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
public class Logger
{
public static string filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "log.log");
public static void Write(string message)
{
using (var sw = File.AppendText(filePath))
{
sw.WriteLine(DateTime.Now);
sw.WriteLine(message);
sw.WriteLine();
sw.Flush();
}
}
public static void Write(Exception exception)
{
using (var sw = File.AppendText(filePath))
{
sw.WriteLine(DateTime.Now);
sw.WriteLine("ERROR:");
sw.WriteLine(exception.Message);
sw.WriteLine(exception.StackTrace);
sw.WriteLine();
sw.Flush();
}
}
}
Нафига готовые решения? Вот - образец велосипедостроения! (И, тссс! Не вздумайте использовать его в многопоточной среде ;) А именно там он и используется по факту :) )
PS угадайте какой фортель выкинет сеё чудо при race condition
Комментарии (20) RSS
Добавить комментарий