Вот функция для ведения лог-файла работы приложения. Можно монтировать в свой код немного видоизменив параметры. Лог создается до определенного размера, затем лог переименовывается в старый и запись продолжает вестись в новый лог.
private void WriteLog(string line)
{
try
{
//пишем все сообщения, генерируемые службой во время работы, в локальный файл на диске
FileStream fs1 = new FileStream(path + "log.txt", FileMode.Append);
long lenght = fs1.Length;
fs1.Dispose();
if (lenght >= log_size)//log_size - предельный размер лог-файла в байтах
{
File.Move(path + "log.txt", path + "log_" + DateTime.Now.ToShortDateString() + "." + DateTime.Now.Hour + "." + DateTime.Now.Minute + "." + DateTime.Now.Second + @".old");
}
FileStream fs2 = new FileStream(path + "log.txt", FileMode.Append);
StreamWriter sw = new StreamWriter(fs2);
sw.WriteLine(DateTime.Now.ToString() + " : наша информация для логирования");
sw.WriteLine(" ");
sw.Close();
fs2.Dispose();
}
catch (Exception ex)
{
//Console.WriteLine(ex.Message);
}
}