|
|
|
|
|
using Microsoft.AspNetCore.Hosting;
|
|
|
|
|
|
using Microsoft.Extensions.Hosting;
|
|
|
|
|
|
using System;
|
|
|
|
|
|
using System.IO;
|
|
|
|
|
|
using System.Linq;
|
|
|
|
|
|
using System.Timers;
|
|
|
|
|
|
using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Khd.Core.Api
|
|
|
|
|
|
{
|
|
|
|
|
|
public class Program
|
|
|
|
|
|
{
|
|
|
|
|
|
public static void Main(string[] args)
|
|
|
|
|
|
{
|
|
|
|
|
|
#region <20><>ʱɾ<CAB1><C9BE><EFBFBD><EFBFBD>־
|
|
|
|
|
|
// <20><><EFBFBD>ö<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>24Сʱ<D0A1><CAB1>86400000<30><30><EFBFBD>룩
|
|
|
|
|
|
System.Timers.Timer timer = new System.Timers.Timer(86400000);
|
|
|
|
|
|
|
|
|
|
|
|
timer.Elapsed += TimerElapsed;
|
|
|
|
|
|
timer.AutoReset = true;
|
|
|
|
|
|
timer.Start();
|
|
|
|
|
|
|
|
|
|
|
|
// <20><><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
DeleteOldLogFiles();
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
CreateHostBuilder(args).Build().Run();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private static void TimerElapsed(object sender, ElapsedEventArgs e)
|
|
|
|
|
|
{
|
|
|
|
|
|
DeleteOldLogFiles();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public static IHostBuilder CreateHostBuilder(string[] args)
|
|
|
|
|
|
{
|
|
|
|
|
|
return Host.CreateDefaultBuilder(args)
|
|
|
|
|
|
.ConfigureWebHostDefaults(webBuilder =>
|
|
|
|
|
|
{
|
|
|
|
|
|
webBuilder.UseUrls("http://0.0.0.0:5001");
|
|
|
|
|
|
webBuilder.UseStartup<Startup>();
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
private static void DeleteOldLogFiles()
|
|
|
|
|
|
{
|
|
|
|
|
|
string logDirectory = AppDomain.CurrentDomain.BaseDirectory + "logs"; // <20>滻Ϊʵ<CEAA>ʵ<EFBFBD><CAB5><EFBFBD>־<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>·<EFBFBD><C2B7>
|
|
|
|
|
|
DateTime cutoffDate = DateTime.Now.AddDays(-3); // 3<><33>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
|
{
|
|
|
|
|
|
DirectoryInfo dirInfo = new DirectoryInfo(logDirectory);
|
|
|
|
|
|
|
|
|
|
|
|
// <20><>ȡ<EFBFBD><C8A1>־<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ɸѡ<C9B8><D1A1><EFBFBD><EFBFBD>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
|
|
|
|
|
FileInfo[] logFiles = dirInfo.GetFiles("*.log")
|
|
|
|
|
|
.Where(file => file.LastWriteTime < cutoffDate)
|
|
|
|
|
|
.ToArray();
|
|
|
|
|
|
|
|
|
|
|
|
foreach (var file in logFiles)
|
|
|
|
|
|
{
|
|
|
|
|
|
// ɾ<><C9BE><EFBFBD>ļ<EFBFBD>
|
|
|
|
|
|
file.Delete();
|
|
|
|
|
|
Console.WriteLine($"<22><>ɾ<EFBFBD><C9BE><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>{file.Name}");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
|
{
|
|
|
|
|
|
Console.WriteLine($"ɾ<><C9BE><EFBFBD><EFBFBD>־<EFBFBD>ļ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD>{ex.Message}");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|