mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 19:24:29 +08:00
- 移除 AbstractArchitecture<T> 中的泛型参数 T - 移除 AbstractGodotModule<T> 中的泛型参数 T - 删除 AbstractDragDrop2DComponentBase 组件类 - 删除 AbstractDragDropArea2DComponent 组件类 - 修改 InstallGodotModule 方法的泛型约束 - 更新系统中获取系统实例的方式 - 调整命名空间和依赖引用关系 - 添加新的日志抽象基类 AbstractLogger - 重构控制台日志记录器继承抽象基类
39 lines
1.0 KiB
C#
39 lines
1.0 KiB
C#
using GFramework.Core.logging;
|
|
using Godot;
|
|
|
|
namespace GFramework.Godot.logging;
|
|
|
|
/// <summary>
|
|
/// Godot平台的日志记录器实现
|
|
/// </summary>
|
|
public sealed class GodotLogger(
|
|
string? name = null,
|
|
LogLevel minLevel = LogLevel.Info) : AbstractLogger(name??ILogger.RootLoggerName, minLevel)
|
|
{
|
|
protected override void Write(LogLevel level, string message, Exception? exception)
|
|
{
|
|
var prefix = $"[{level.ToString().ToUpper()}][{Name()}]";
|
|
|
|
// 将异常信息追加到日志消息中
|
|
if (exception != null)
|
|
{
|
|
message += "\n" + exception;
|
|
}
|
|
|
|
// 根据日志级别选择不同的输出方法
|
|
switch (level)
|
|
{
|
|
case LogLevel.Error:
|
|
case LogLevel.Fatal:
|
|
GD.PrintErr($"{prefix} {message}");
|
|
break;
|
|
|
|
case LogLevel.Warning:
|
|
GD.PushWarning($"{prefix} {message}");
|
|
break;
|
|
default:
|
|
GD.Print($"{prefix} {message}");
|
|
break;
|
|
}
|
|
}
|
|
} |