mirror of
https://github.com/MikuLeaks/MikuSB.git
synced 2026-06-04 16:43:59 +00:00
Rename the log file
This commit is contained in:
@@ -22,16 +22,35 @@ public class LoaderManager : MikuSB
|
|||||||
public static void InitConfig()
|
public static void InitConfig()
|
||||||
{
|
{
|
||||||
// Initialize log
|
// Initialize log
|
||||||
var counter = 0;
|
var logDir = ConfigManager.Config.Path.LogPath;
|
||||||
FileInfo file;
|
var logFile = new FileInfo(Path.Combine(logDir, "Server.log"));
|
||||||
while (true)
|
logFile.Directory?.Create();
|
||||||
|
|
||||||
|
if (logFile.Exists)
|
||||||
{
|
{
|
||||||
file = new FileInfo(ConfigManager.Config.Path.LogPath + $"/{DateTime.Now:yyyy-MM-dd}-{++counter}.log");
|
// Read start time from first log line, fall back to file creation time
|
||||||
if (file is not { Exists: false, Directory: not null }) continue;
|
DateTime logStartTime;
|
||||||
file.Directory.Create();
|
try
|
||||||
break;
|
{
|
||||||
|
var firstLine = File.ReadLines(logFile.FullName).FirstOrDefault() ?? "";
|
||||||
|
// Format: [HH:mm:ss] ...
|
||||||
|
var timeStr = firstLine.Length >= 10 ? firstLine[1..9] : "";
|
||||||
|
var dateStr = logFile.CreationTime.ToString("yyyy-MM-dd");
|
||||||
|
logStartTime = DateTime.TryParse($"{dateStr} {timeStr}", out var parsed)
|
||||||
|
? parsed
|
||||||
|
: logFile.CreationTime;
|
||||||
}
|
}
|
||||||
Logger.SetLogFile(file);
|
catch
|
||||||
|
{
|
||||||
|
logStartTime = logFile.CreationTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
var backupName = $"Server-backup-{logStartTime:yyyy.MM.dd-HH.mm.ss}.log";
|
||||||
|
var backupFile = new FileInfo(Path.Combine(logDir, backupName));
|
||||||
|
logFile.MoveTo(backupFile.FullName, overwrite: true);
|
||||||
|
}
|
||||||
|
|
||||||
|
Logger.SetLogFile(new FileInfo(Path.Combine(logDir, "Server.log")));
|
||||||
|
|
||||||
// Init all directories
|
// Init all directories
|
||||||
try
|
try
|
||||||
|
|||||||
Reference in New Issue
Block a user