FIREBREATH 1.6 -- VC2010 --没有使用 FBLOG_TRACE("StaticInitialize()"、"INIT-trace")进行日志记录;
设置
outMethods.push_back(std::make_pair(FB::Log::LogMethod_File, "U:/logs/PT.log"));...FB::Log::LogLevel getLogLevel(){ 返回FB::日志::LogLevel_Trace;...
将"FBLOG_TRACE"更改为"FBLOG_INFO"日志记录到日志文件有效。我不明白原因。
插入其各自的区域
FB::Log::LogLevel getLogLevel(){
return FB::Log::LogLevel_Trace; // Now Trace and above is logged.
}
描述日志记录在这里。
启用日志记录...
使用 Prep* 脚本重新生成项目
在项目中打开工厂.cpp。您需要在插件工厂的类定义中定义以下函数:
。
关于日志级别
。
如果要更改日志级别,则需要在工厂.cpp中定义以下内容:
提到上面的意思是"工厂.cpp"中的某个地方。 这是不正确的。描述应该说-->
如果要更改日志级别,则需要在 PluginFactory 的类定义中定义以下函数:
我把它从"工厂.cpp"的底部拖到类插件工厂里面。现在它按预期工作!!
具有不同日志级别(FBLOG_FATAL、FBLOG_ERROR、FBLOG_WARN、FBLOG_INFO、FBLOG_DEBUG FBLOG_TRACE)的全部目的是您可以配置要使用的级别,并且该级别以下的任何内容都将被隐藏。 FireBreath 中的默认日志级别为 FB::Log::LogLevel_Info,这意味着 INFO 以下的任何内容(例如 DEBUG 或 TRACE)都不可见。
您可以通过重写工厂类中的 FB::FactoryBase::getLogLevel() 来更改此设置,以返回 FB::Log::LogLevel_Trace。
您要覆盖的方法是:https://github.com/firebreath/FireBreath/blob/master/src/PluginCore/FactoryBase.cpp#L78
日志级枚举的定义:https://github.com/firebreath/FireBreath/blob/master/src/ScriptingCore/logging.h#L69
有一个版本的火呼吸不起作用;我认为它是由 1.6.0 修复的,但我不记得了。如果这不起作用,请尝试更新到 1.6 分支上的最新版本(截至撰写本文时目前为 1.6.1,但我还没有找到时间发布)