void _Init() { LogFileEnabled = ParseBool("LogFileEnabled", false); if (!LogFileEnabled) { return; } _LogFileAutoFlush = ParseBool("LogFileAutoFlush", false); // File reset options. LogFileTimeout = ParseSpan("LogFileTimeout", new TimeSpan()); LogFileName = ParseString("LogFileName", ""); // Enable rolling by default if file name looks like daily. var defaultRolling = LogFileName.Contains("MMdd}"); LogFileRolling = ParseBool("LogFileRolling", defaultRolling); if (string.IsNullOrEmpty(LogFileName)) { // Suffix pattern. var defautlSuffix = LogFileRolling // Rolling resets daily by default. ? "{0:yyyyMMdd}.txt" // Use current date when creating new file. : "{0:yyyyMMdd_HHmmss}.txt"; // File prefix to make it unique. var defaultPrefix = string.IsNullOrEmpty(_configPrefix) ? GetAssemblyName() : _configPrefix; // Generate unique file name. var fileName = string.Format("{0}\\{1}{2}", GetLogFolder(), defaultPrefix, defautlSuffix ); LogFileName = fileName; } }
private string CreateFileName() { string result; string ticks = DateTime.Now.Ticks.ToString(); if (LogFileName.Contains(".")) { string extension = LogFileName.Substring(LogFileName.LastIndexOf(".")); string fileName = LogFileName.Substring(0, LogFileName.LastIndexOf(".")); fileName = string.Format("{0}[{1}]{2}", fileName, ticks, extension); result = fileName; } else { string fileName = string.Format("{0}[{1}]", LogFileName, ticks); result = fileName; } SavedLogFileName = result; return(result); }