Firebreath FBLOG_TRACE()不记录日志文件--FBLOG_INFO()记录正常--有什么区别

Firebreath FBLOG_TRACE()不记录日志文件--FBLOG_INFO()记录正常--有什么区别,firebreath,Firebreath,FIREBREATH 1.6--VC2010-- 不使用FBLOG_跟踪记录(“StaticInitialize()”,“INIT跟踪”) 背景 outMethods.push_back(std::make_pair(FB::Log::LogMethod_文件,“U:/logs/PT.Log”); ... FB::Log::LogLevel getLogLevel(){ 返回FB::Log::LogLevel_跟踪; 将“FBLOG\u TRACE”更改为“FBLOG\u INFO”日志记录

FIREBREATH 1.6--VC2010-- 不使用FBLOG_跟踪记录(“StaticInitialize()”,“INIT跟踪”)

背景

outMethods.push_back(std::make_pair(FB::Log::LogMethod_文件,“U:/logs/PT.Log”); ... FB::Log::LogLevel getLogLevel(){ 返回FB::Log::LogLevel_跟踪;



将“FBLOG\u TRACE”更改为“FBLOG\u INFO”日志记录到日志文件起作用。我不明白原因。

拥有不同日志级别的全部目的(FBLOG\u致命、FBLOG\u错误、FBLOG\u警告、FBLOG\u信息、FBLOG\u调试、FBLOG\u跟踪)这样,您就可以配置要使用的级别,并且该级别以下的任何内容都将被隐藏。FireBreathe中的默认日志级别为FB::log::LogLevel_Info,这意味着信息以下的任何内容(如调试或跟踪)都将不可见

您可以通过在Factory类中重写FB::FactoryBase::getLogLevel()以返回FB::Log::LogLevel\U跟踪来改变这一点

您要覆盖的方法是:

日志级别枚举的定义:


FireBreath有一个版本不起作用;我想它是由1.6.0修复的,但我不记得很清楚。如果不起作用,请尝试更新到1.6分支上的最新版本(在撰写本文时,它目前是1.6.1,但我还没有找到时间发布)

函数未插入到其各自的区域中

FB::Log::LogLevel getLogLevel(){
    return FB::Log::LogLevel_Trace; // Now Trace and above is logged.
}

描述记录

启用日志记录

  • 使用prep*脚本重新生成项目

  • 在项目中打开Factory.cpp。您需要在PluginFactory的类定义中定义以下函数:

  • 关于日志级别

    如果要更改日志级别,需要在Factory.cpp中定义以下内容:

    上面提到的意思是“Factory.cpp”中某个地方的。这是不正确的。描述应该是-->

    如果要更改日志级别,需要在PluginFactory的类定义中定义以下函数

    我将它从“Factory.cpp”的底部拖到类内的PluginFactory。
    <强>现在它工作如预期!!< < /强> < /p>对不起,我猜我假设C++的经验很高。我指定你应该重写这个方法,这意味着它应该在你的工厂类中。当然可以放在你的.CPP文件中,但是它当然也需要在类头中有一个定义。这是标准的。很久以前我就意识到阅读一个描述是一件很好的事情。对于我来说,在你的Fask.CPP中定义如下是不同的,并且在插件工厂的类定义中定义下面的函数。与高水平的C++体验无关。只需按照指令。我知道你的速度有多快。github中的e代码。因此,为了防止其他用户指向错误的方向,请更改在您的Factory.cpp中定义以下内容,以便在PluginFactory的类定义中定义以下函数。请。这需要花费我2天的时间。;)FireBreath.org是一个wiki;欢迎您自己更新它!(我发现,如果我做了所有的更新,人们永远不会知道如何做,我试图把时间主要花在修复bug上,而不是写文档;考虑到我花在维护项目上的时间,我认为让使用系统的人帮我做这件事是一个很小的代价)+1用于在类定义内高亮显示。已保存我的butt@mossfoot:我花了两天时间才弄明白:-)