添加日志

This commit is contained in:
zs-yg
2025-11-23 09:44:24 +08:00
parent 397002f2e8
commit 060edfb873
4 changed files with 48 additions and 0 deletions

View File

@@ -1,6 +1,7 @@
using System; using System;
using System.IO; using System.IO;
using System.Collections.Generic; using System.Collections.Generic;
using MCSJ.Tools.LogSystem;
namespace MCSJ.Tools.ServerManagement namespace MCSJ.Tools.ServerManagement
{ {
@@ -8,15 +9,19 @@ namespace MCSJ.Tools.ServerManagement
{ {
public static void AgreeEula() public static void AgreeEula()
{ {
LogMain.Info("开始处理EULA同意流程");
// 获取服务器列表 // 获取服务器列表
var servers = ServerManager.GetServerProfiles(); var servers = ServerManager.GetServerProfiles();
if (servers.Count == 0) if (servers.Count == 0)
{ {
LogMain.Error("没有可用的服务器存档");
Console.WriteLine("没有可用的服务器存档"); Console.WriteLine("没有可用的服务器存档");
return; return;
} }
// 显示服务器列表供选择 // 显示服务器列表供选择
LogMain.Info($"找到 {servers.Count} 个服务器存档");
Console.WriteLine("可用的服务器存档:"); Console.WriteLine("可用的服务器存档:");
for (int i = 0; i < servers.Count; i++) for (int i = 0; i < servers.Count; i++)
{ {
@@ -26,16 +31,19 @@ namespace MCSJ.Tools.ServerManagement
Console.Write("请选择服务器(输入编号): "); Console.Write("请选择服务器(输入编号): ");
if (!int.TryParse(Console.ReadLine(), out int serverIndex) || serverIndex < 1 || serverIndex > servers.Count) if (!int.TryParse(Console.ReadLine(), out int serverIndex) || serverIndex < 1 || serverIndex > servers.Count)
{ {
LogMain.Warn($"无效的服务器选择: {serverIndex}");
Console.WriteLine("无效选择"); Console.WriteLine("无效选择");
return; return;
} }
string selectedServer = servers[serverIndex - 1]; string selectedServer = servers[serverIndex - 1];
LogMain.Info($"用户选择了服务器: {selectedServer}");
string eulaPath = Path.Combine("profiles", selectedServer, "eula.txt"); string eulaPath = Path.Combine("profiles", selectedServer, "eula.txt");
// 检查eula文件是否存在 // 检查eula文件是否存在
if (!File.Exists(eulaPath)) if (!File.Exists(eulaPath))
{ {
LogMain.Warn($"没有找到eula.txt文件: {eulaPath}");
Console.WriteLine("没有找到eula.txt文件"); Console.WriteLine("没有找到eula.txt文件");
return; return;
} }
@@ -44,6 +52,7 @@ namespace MCSJ.Tools.ServerManagement
string eulaContent = File.ReadAllText(eulaPath); string eulaContent = File.ReadAllText(eulaPath);
if (eulaContent.Contains("eula=true")) if (eulaContent.Contains("eula=true"))
{ {
LogMain.Info("EULA已经同意无需修改");
Console.WriteLine("EULA已经同意无需修改"); Console.WriteLine("EULA已经同意无需修改");
return; return;
} }
@@ -52,10 +61,12 @@ namespace MCSJ.Tools.ServerManagement
{ {
eulaContent = eulaContent.Replace("eula=false", "eula=true"); eulaContent = eulaContent.Replace("eula=false", "eula=true");
File.WriteAllText(eulaPath, eulaContent); File.WriteAllText(eulaPath, eulaContent);
LogMain.Info("已成功同意EULA");
Console.WriteLine("已同意EULA"); Console.WriteLine("已同意EULA");
} }
else else
{ {
LogMain.Error($"无效的eula.txt格式: {eulaPath}");
Console.WriteLine("无效的eula.txt格式"); Console.WriteLine("无效的eula.txt格式");
} }
} }

View File

@@ -1,6 +1,7 @@
using System; using System;
using System.IO; using System.IO;
using System.Collections.Generic; using System.Collections.Generic;
using MCSJ.Tools.LogSystem;
namespace MCSJ.Tools.ServerManagement namespace MCSJ.Tools.ServerManagement
{ {
@@ -8,15 +9,19 @@ namespace MCSJ.Tools.ServerManagement
{ {
public static void GenerateScript() public static void GenerateScript()
{ {
LogMain.Info("开始生成服务器启动脚本");
// 获取服务器列表 // 获取服务器列表
var servers = ServerManager.GetServerProfiles(); var servers = ServerManager.GetServerProfiles();
if (servers.Count == 0) if (servers.Count == 0)
{ {
LogMain.Error("没有可用的服务器存档");
Console.WriteLine("没有可用的服务器存档"); Console.WriteLine("没有可用的服务器存档");
return; return;
} }
// 显示服务器列表供选择 // 显示服务器列表供选择
LogMain.Info($"找到 {servers.Count} 个服务器存档");
Console.WriteLine("可用的服务器存档:"); Console.WriteLine("可用的服务器存档:");
for (int i = 0; i < servers.Count; i++) for (int i = 0; i < servers.Count; i++)
{ {
@@ -26,17 +31,20 @@ namespace MCSJ.Tools.ServerManagement
Console.Write("请选择服务器(输入编号): "); Console.Write("请选择服务器(输入编号): ");
if (!int.TryParse(Console.ReadLine(), out int serverIndex) || serverIndex < 1 || serverIndex > servers.Count) if (!int.TryParse(Console.ReadLine(), out int serverIndex) || serverIndex < 1 || serverIndex > servers.Count)
{ {
LogMain.Error($"无效的服务器选择: {serverIndex}");
Console.WriteLine("无效选择"); Console.WriteLine("无效选择");
return; return;
} }
string selectedServer = servers[serverIndex - 1]; string selectedServer = servers[serverIndex - 1];
LogMain.Info($"用户选择了服务器: {selectedServer}");
string serverPath = Path.Combine("profiles", selectedServer); string serverPath = Path.Combine("profiles", selectedServer);
// 检查JRE配置 // 检查JRE配置
string jreConfigPath = "setup/jre.toml"; string jreConfigPath = "setup/jre.toml";
if (!File.Exists(jreConfigPath) || new FileInfo(jreConfigPath).Length == 0) if (!File.Exists(jreConfigPath) || new FileInfo(jreConfigPath).Length == 0)
{ {
LogMain.Error("没有找到有效的JRE配置");
Console.WriteLine("没有下载的JRE请先下载JRE"); Console.WriteLine("没有下载的JRE请先下载JRE");
return; return;
} }
@@ -63,6 +71,7 @@ namespace MCSJ.Tools.ServerManagement
if (jreVersions.Count == 0) if (jreVersions.Count == 0)
{ {
LogMain.Error("JRE配置文件为空");
Console.WriteLine("没有可用的JRE配置"); Console.WriteLine("没有可用的JRE配置");
return; return;
} }
@@ -86,10 +95,12 @@ namespace MCSJ.Tools.ServerManagement
} }
string selectedVersion = versionList[selectedVersionIndex - 1]; string selectedVersion = versionList[selectedVersionIndex - 1];
LogMain.Info($"用户选择了JRE版本: {selectedVersion}");
var versionConfig = jreVersions[selectedVersion]; var versionConfig = jreVersions[selectedVersion];
if (!versionConfig.ContainsKey("java_path") || !versionConfig.ContainsKey("javaw_path")) if (!versionConfig.ContainsKey("java_path") || !versionConfig.ContainsKey("javaw_path"))
{ {
LogMain.Error($"JRE配置不完整: {selectedVersion}");
Console.WriteLine("JRE配置不完整"); Console.WriteLine("JRE配置不完整");
return; return;
} }
@@ -111,6 +122,7 @@ namespace MCSJ.Tools.ServerManagement
string scriptPath = Path.Combine(serverPath, "start.bat"); string scriptPath = Path.Combine(serverPath, "start.bat");
File.WriteAllText(scriptPath, scriptContent); File.WriteAllText(scriptPath, scriptContent);
LogMain.Info($"成功生成启动脚本: {scriptPath}");
Console.WriteLine($"已生成启动脚本: {scriptPath}"); Console.WriteLine($"已生成启动脚本: {scriptPath}");
} }
} }

View File

@@ -1,6 +1,7 @@
using System; using System;
using System.IO; using System.IO;
using System.Collections.Generic; using System.Collections.Generic;
using MCSJ.Tools.LogSystem;
namespace MCSJ.Tools.ServerManagement namespace MCSJ.Tools.ServerManagement
{ {
@@ -12,6 +13,7 @@ namespace MCSJ.Tools.ServerManagement
{ {
while (true) while (true)
{ {
LogMain.Info("显示服务器管理菜单");
Console.WriteLine("\n=== 服务器管理 ==="); Console.WriteLine("\n=== 服务器管理 ===");
Console.WriteLine("1. 生成启动脚本"); Console.WriteLine("1. 生成启动脚本");
Console.WriteLine("2. 启动服务器"); Console.WriteLine("2. 启动服务器");
@@ -23,17 +25,22 @@ namespace MCSJ.Tools.ServerManagement
switch (choice) switch (choice)
{ {
case "1": case "1":
LogMain.Info("用户选择: 生成启动脚本");
ScriptGenerator.GenerateScript(); ScriptGenerator.GenerateScript();
break; break;
case "2": case "2":
LogMain.Info("用户选择: 启动服务器");
ServerStarter.StartServer(); ServerStarter.StartServer();
break; break;
case "3": case "3":
LogMain.Info("用户选择: 同意eula.txt");
EulaAgreer.AgreeEula(); EulaAgreer.AgreeEula();
break; break;
case "4": case "4":
LogMain.Info("用户选择: 返回主菜单");
return; return;
default: default:
LogMain.Warn($"无效菜单选项: {choice}");
Console.WriteLine("无效选项"); Console.WriteLine("无效选项");
break; break;
} }
@@ -48,11 +55,16 @@ namespace MCSJ.Tools.ServerManagement
var profiles = new List<string>(); var profiles = new List<string>();
if (Directory.Exists("profiles")) if (Directory.Exists("profiles"))
{ {
LogMain.Info("获取服务器存档列表");
foreach (var dir in Directory.GetDirectories("profiles")) foreach (var dir in Directory.GetDirectories("profiles"))
{ {
profiles.Add(Path.GetFileName(dir)); profiles.Add(Path.GetFileName(dir));
} }
} }
else
{
LogMain.Warn("服务器存档目录不存在");
}
return profiles; return profiles;
} }
} }

View File

@@ -2,6 +2,7 @@ using System;
using System.IO; using System.IO;
using System.Diagnostics; using System.Diagnostics;
using System.Collections.Generic; using System.Collections.Generic;
using MCSJ.Tools.LogSystem;
namespace MCSJ.Tools.ServerManagement namespace MCSJ.Tools.ServerManagement
{ {
@@ -9,15 +10,19 @@ namespace MCSJ.Tools.ServerManagement
{ {
public static void StartServer() public static void StartServer()
{ {
LogMain.Info("开始启动服务器流程");
// 获取服务器列表 // 获取服务器列表
var servers = ServerManager.GetServerProfiles(); var servers = ServerManager.GetServerProfiles();
if (servers.Count == 0) if (servers.Count == 0)
{ {
LogMain.Error("没有可用的服务器存档");
Console.WriteLine("没有可用的服务器存档"); Console.WriteLine("没有可用的服务器存档");
return; return;
} }
// 显示服务器列表供选择 // 显示服务器列表供选择
LogMain.Info($"找到 {servers.Count} 个服务器存档");
Console.WriteLine("可用的服务器存档:"); Console.WriteLine("可用的服务器存档:");
for (int i = 0; i < servers.Count; i++) for (int i = 0; i < servers.Count; i++)
{ {
@@ -27,17 +32,20 @@ namespace MCSJ.Tools.ServerManagement
Console.Write("请选择服务器(输入编号): "); Console.Write("请选择服务器(输入编号): ");
if (!int.TryParse(Console.ReadLine(), out int serverIndex) || serverIndex < 1 || serverIndex > servers.Count) if (!int.TryParse(Console.ReadLine(), out int serverIndex) || serverIndex < 1 || serverIndex > servers.Count)
{ {
LogMain.Warn($"无效的服务器选择: {serverIndex}");
Console.WriteLine("无效选择"); Console.WriteLine("无效选择");
return; return;
} }
string selectedServer = servers[serverIndex - 1]; string selectedServer = servers[serverIndex - 1];
LogMain.Info($"用户选择了服务器: {selectedServer}");
string serverPath = Path.Combine("profiles", selectedServer); string serverPath = Path.Combine("profiles", selectedServer);
string batPath = Path.Combine(serverPath, "start.bat"); string batPath = Path.Combine(serverPath, "start.bat");
// 检查启动脚本是否存在 // 检查启动脚本是否存在
if (!File.Exists(batPath)) if (!File.Exists(batPath))
{ {
LogMain.Warn($"没有找到启动脚本: {batPath}");
Console.WriteLine("没有找到启动脚本,请先生成脚本"); Console.WriteLine("没有找到启动脚本,请先生成脚本");
return; return;
} }
@@ -50,6 +58,7 @@ namespace MCSJ.Tools.ServerManagement
if (!File.Exists(fullBatPath)) if (!File.Exists(fullBatPath))
{ {
LogMain.Error($"启动脚本不存在: {fullBatPath}");
Console.WriteLine($"启动脚本不存在: {fullBatPath}"); Console.WriteLine($"启动脚本不存在: {fullBatPath}");
return; return;
} }
@@ -62,14 +71,18 @@ namespace MCSJ.Tools.ServerManagement
CreateNoWindow = false CreateNoWindow = false
}; };
LogMain.Info($"启动路径: {fullBatPath}");
LogMain.Info($"工作目录: {fullServerPath}");
Console.WriteLine($"启动路径: {fullBatPath}"); Console.WriteLine($"启动路径: {fullBatPath}");
Console.WriteLine($"工作目录: {fullServerPath}"); Console.WriteLine($"工作目录: {fullServerPath}");
Process.Start(startInfo); Process.Start(startInfo);
LogMain.Info($"成功启动服务器: {selectedServer}");
Console.WriteLine($"已启动服务器: {selectedServer}"); Console.WriteLine($"已启动服务器: {selectedServer}");
} }
catch (Exception ex) catch (Exception ex)
{ {
LogMain.Error($"启动服务器失败: {ex.Message}");
Console.WriteLine($"启动服务器失败: {ex.Message}"); Console.WriteLine($"启动服务器失败: {ex.Message}");
} }
} }