# Logger::Log ```cpp void Log(LogLevel level, LogCategory category, const Containers::String& message, const char* file = nullptr, int32_t line = 0, const char* function = nullptr) ``` 通用日志记录方法。根据设置的最小日志级别和分类开关决定是否输出,然后将日志分发给所有已注册的 Sink。如果日志级别低于最小级别或分类被禁用,则不输出。 **参数:** - `level` - 日志级别(Verbose, Debug, Info, Warning, Error, Fatal) - `category` - 日志分类(General, Rendering, Physics 等) - `message` - 日志消息内容 - `file` - 源代码文件路径(可选,默认 nullptr) - `line` - 源代码行号(可选,默认 0) - `function` - 函数名称(可选,默认 nullptr) **返回:** 无 **复杂度:** O(n),n 为注册的 Sink 数量 **示例:** ```cpp #include XCEngine::Debug::Logger::Get().Log( XCEngine::Debug::LogLevel::Error, XCEngine::Debug::LogCategory::FileSystem, "Failed to open config file", __FILE__, __LINE__, __FUNCTION__ ); // 推荐使用 XE_LOG 宏自动填充位置信息 XE_LOG(XCEngine::Debug::LogCategory::General, XCEngine::Debug::LogLevel::Info, "Initialized"); ``` ## 相关文档 - [Logger 总览](logger.md) - 返回类总览 - [LogLevel](../loglevel/loglevel.md) - 日志级别枚举 - [LogCategory](../logcategory/logcategory.md) - 日志分类枚举