问题标签 [boost-log]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
599 浏览

c++ - Boost Log 可以在静态 Boost 构建中构建为 .dll/.so 吗?

是否可以将 Boost Log 构建为动态库 (.dll/.so),但在静态 Boost 构建中这样做?我希望所有其他 Boost 库都是静态的,并且只有 Boost Log 作为 .dll(因为多个 .dll 在同一个应用程序中使用它)。

是否所有 Boost 库都需要动态才能获得 Boost Log .dll?我试图将 define=BOOST_LOG_DYN_LINK 添加到我的 bjam 命令行,但无济于事:

0 投票
1 回答
83 浏览

c++ - 为什么 boost::log 的链接限制

我在多个项目中使用了 boost log,只是发现了我应该使用/构建 lib 的方式的限制,具体取决于软件组件类型 static 或 shared 我开发 ode 请参见此处

该库有一个单独编译的部分,应按照入门指南中的说明进行构建。不过,应该注意一件事。如果您的应用程序包含多个使用 Boost.Log 的模块(例如,一个 exe 和一个或多个 dll),则该库必须构建为一个共享对象。如果您有一个可与 Boost.Log 一起使用的可执行文件或单个模块,则可以将该库构建为静态库。

对此限制有解释/原因吗?

0 投票
1 回答
912 浏览

android - Boost Log V2 库 Android 链接

我正在尝试使用 NDK 9C 在 Android 上构建 Boost 1.55 Log v2 库。我已经使用了补丁并使用 build-android.sh 构建了 boost,包括线程、iostreams、随机和日志选项。我已经使用了 Boost 的其他功能并且它们已经奏效了。但似乎存在与 Log V2 的链接问题,我无法用现有解决方案解决。我不断收到相同的“未定义引用”错误。在网上人们解决了这个问题,包括“#define BOOST_ALL_DYN_LINK”,但它对我不起作用。你知道可能是什么问题吗?提前致谢。

控制台输出:

示例“helloworld”项目代码如下。BoostLogLib.h 文件

BoostLogLib.cpp 文件

安卓.mk

应用程序.mk

0 投票
1 回答
278 浏览

c++ - Boost::log 与静态工厂方法

我尝试使用 boost::log 库来实现日志记录。我将记录器声明为私有类成员,但是当我来到一个具有静态工厂方法的类时,没有计算出一个问题。错误消息是:在静态成员函数中无效使用成员 'MyObjectContainer::slg'。我想避免使用全局记录器,还有其他解决方案吗?

提前致谢。

0 投票
6 回答
4189 浏览

boost-log - 如何在 boost log 2.0 中记录编码器的行号?

我可以为此使用 LineID 属性吗?我希望我可以使用 sink::set_formatter 来代替使用

在每个日志语句中。

0 投票
1 回答
6267 浏览

c++ - Boost logging set output level

I was wondering if there is a something similar to FLAGS_stderrthreshold that only outputs the level that is more severe than the flag in boost library. For example, the code I have below prints everything to the console. Can I set the level so that it only prints warning, error and fatal?

Actual Output:

Desire Output:

0 投票
1 回答
269 浏览

boost - BOOST_LOG_TRIVIAL stragne 警告 VS2008express

我使用 Visual Studio 9 (2008)。当我编译这个简单的程序时:

我收到警告:

程序运行正常,但是当你记录很多时这真的很烦人。任何想法如何解决它?

0 投票
0 回答
278 浏览

c++ - 使用 _CrtDumpMemoryLeaks 的 BOOST_LOG_TRIVIAL 内存泄漏

我正在使用 Visual Studio 2010 和 boost 库。我正在尝试使用在主函数退出后调用的 _CrtDumpMemoryLeaks 来查找内存泄漏。我很确定 boost_log_trivial 不会泄漏内存。如何避免这种误报?

源代码:

输出:

0 投票
1 回答
528 浏览

c++ - Boost.Log ignores overloaded stream insertion operator

I have a class that I want to appear in log in a certain way, so I've overloaded its << operator:

Inserting the class above in log stream:

causes compilation error:

I know the error lies in the fact, that I've overloaded << for wide strings. All is fine when I use ostream instead of wostream, but I really want to use wide string version.

I've tried to set locale for a sink:

And have BOOST_LOG_USE_WCHAR_T defined before any log-related includes.

Is there anything I can do to make logging work with wide string << operator?

I'm using Boost 1.55.0.

0 投票
2 回答
637 浏览

c++ - 如何在 boost log 2.0 中设置 std::ios_base 标志,如 std::left?

我有一个广泛使用 boost log 2.0 的应用程序。现在我想为该应用程序设置一些默认标志,例如std::setprecision(std::numeric_limits<double>::digits10 + 1),std::scientificstd::left. 但是我该怎么做呢?一种方法是在我的主要功能的最开始创建一个记录器并创建一个虚拟日志消息。这将永久设置所需的标志。但是没有更好的方法来做到这一点吗?

编辑回复:“OP 应该显示实际代码。”

我有一个名为 L 的全局 Logging 单例:

它提供了一个日志接收器、严重性级别,并利用 MPI 方法在 MPI 节点之间进行同步计时。类成员的实现如下:

现在使用:我的类通常有一个静态logger_t(typedef for boost::log::sources::severity_channel_logger<severity_level, std::string>)成员

我目前对该问题的解决方案是在我的程序开头放置一个日志记录语句