# ILogSink **命名空间**: `XCEngine::Debug` **类型**: `class` (abstract interface) **描述**: 日志输出槽抽象接口,定义日志输出的标准协议。 ## 概述 `ILogSink` 是日志系统的输出抽象接口。用户可以实现此接口来创建自定义的日志输出方式,如网络输出、数据库存储等。`Logger` 通过多个 Sink 分发日志。 ## 公共方法 | 方法 | 描述 | |------|------| | `virtual void Log(const LogEntry& entry) = 0` | 输出单条日志 | | `virtual void Flush() = 0` | 刷新缓冲区,确保日志写入 | ## 使用示例 ```cpp class CustomLogSink : public ILogSink { public: void Log(const LogEntry& entry) override { // 自定义日志输出逻辑 printf("[%s] %s: %s\n", LogLevelToString(entry.level), LogCategoryToString(entry.category), entry.message.CStr()); } void Flush() override { // 刷新缓冲区 fflush(stdout); } }; // 注册自定义 Sink Logger::Get().AddSink(std::make_unique()); ``` ## 相关文档 - [Logger](./debug-logger.md) - 日志记录器 - [ConsoleLogSink](./debug-consolelogsink.md) - 控制台输出 - [FileLogSink](./debug-filelogsink.md) - 文件输出