Files
XCSDD/docs/api/debug/ilogsink/ilogsink.md
ssdfasd 58a83f445a fix: improve doc link navigation and tree display
- Fix link resolution with proper relative/absolute path handling
- Improve link styling with underline decoration
- Hide leaf nodes from tree, only show directories
- Fix log file path for packaged app
2026-03-19 12:44:08 +08:00

1.3 KiB

ILogSink

命名空间: XCEngine::Debug

类型: class (abstract interface)

描述: 日志输出槽抽象接口,定义日志输出的标准协议。

概述

ILogSink 是日志系统的输出抽象接口。用户可以实现此接口来创建自定义的日志输出方式,如网络输出、数据库存储等。Logger 通过多个 Sink 分发日志。

公共方法

方法 描述
virtual void Log(const LogEntry& entry) = 0 输出单条日志
virtual void Flush() = 0 刷新缓冲区,确保日志写入

使用示例

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);
    }
};

Logger::Get().AddSink(std::make_unique<CustomLogSink>());

相关文档