問題タブ [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.
c++ - Boost Log は、静的 Boost ビルドで .dll/.so としてビルドできますか?
Boost Log を動的ライブラリ (.dll/.so) としてビルドすることは可能ですが、静的な Boost ビルド内で行うことはできますか? 他のすべての Boost ライブラリを静的にして、Boost Log のみを .dll として使用したいと思います (複数の .dll が同じアプリケーション内で使用するため)。
Boost Log .dll を取得するには、すべての Boost ライブラリが動的である必要がありますか? define=BOOST_LOG_DYN_LINK を bjam コマンドラインに追加しようとしましたが、役に立ちませんでした:
android - Boost Log V2 ライブラリ Android リンク
NDK 9C を使用して、Android で Boost 1.55 Log v2 ライブラリを構築しようとしています。私はパッチを使用し、スレッド、iostreams、ランダム、およびログ オプションを含む build-android.sh を使用してブーストをビルドしました。Boost の他の機能を使用しましたが、うまくいきました。しかし、既存のソリューションでは解決できなかった Log V2 とのリンクの問題があるようです。同じ「未定義の参照」エラーが発生し続けます。Web では、「#define BOOST_ALL_DYN_LINK」を含むこの問題を解決しましたが、私にはうまくいきませんでした。何が問題なのか分かりますか?前もって感謝します。
コンソール出力:
サンプルの「helloworld」プロジェクト コードは次のとおりです。BoostLogLib.h ファイル
BoostLogLib.cpp ファイル
Android.mk
アプリケーション.mk
c++ - Boost::log と静的ファクトリ メソッド
boost::log ライブラリを使用してロギングを実装しようとしています。ロガーをプライベート クラス メンバーとして宣言しましたが、静的ファクトリ メソッドを持つクラスに到達したときの問題は数えませんでした。エラー メッセージ: 静的メンバー関数でのメンバー 'MyObjectContainer::slg' の使用が無効です。グローバルロガーを回避したいのですが、他に解決策はありますか?
前もって感謝します。
boost-log - ブーストログ2.0でコーダーの行番号を記録する方法は?
これに LineID 属性を使用できますか? を使用する代わりに、sink::set_formatter を使用してこれを行うことができれば幸いです
と
各ログステートメントで。
c++ - ブースト ロギング セットの出力レベル
FLAGS_stderrthreshold
ブースト ライブラリのフラグよりも深刻なレベルのみを出力するようなものがあるかどうか疑問に思っていました。たとえば、以下のコードはすべてをコンソールに出力します。警告、エラー、致命的なものだけを出力するようにレベルを設定できますか?
実際の出力:
欲望の出力:
boost - BOOST_LOG_TRIVIAL ストラグネ警告 VS2008express
Visual Studio 9 (2008) を使用しています。この単純なプログラムをコンパイルすると:
警告が表示されます:
プログラムは正しく動作しますが、多くのログを記録する場合、これは非常に面倒です。それを解決する方法はありますか?
c++ - _CrtDumpMemoryLeaks を使用した BOOST_LOG_TRIVIAL でのメモリ リーク
Visual Studio 2010 とブースト ライブラリを使用しています。メイン関数の終了後に呼び出される _CrtDumpMemoryLeaks を使用してメモリ リークを見つけようとしています。boost_log_trivial がメモリをリークしないことは確かです。この偽陽性を回避するにはどうすればよいですか?
ソースコード:
出力:
c++ - Boost.Log はオーバーロードされたストリーム挿入演算子を無視する
特定の方法でログに表示したいクラスがあるため、その<<
演算子をオーバーロードしました。
上記のクラスをログ ストリームに挿入します。
コンパイルエラーが発生します:
<<
エラーは、ワイド文字列をオーバーロードしたという事実にあることを知っています。ostream
の代わりに使用する場合はすべて問題wostream
ありませんが、ワイド文字列バージョンを使用したいのです。
シンクのロケールを設定しようとしました:
またBOOST_LOG_USE_WCHAR_T
、ログ関連のインクルードの前に定義しています。
ワイド文字列<<
演算子でロギングを機能させるためにできることはありますか?
Boost 1.55.0 を使用しています。
c++ - ブースト ログ 2.0 で std::left のような std::ios_base フラグを設定するにはどうすればよいですか?
ブースト ログ 2.0 を多用するアプリケーションがあります。std::setprecision(std::numeric_limits<double>::digits10 + 1)
ここで、そのアプリケーションに、 、などのデフォルト フラグを設定したいと思いstd::scientific
ますstd::left
。しかし、どうすればそれを行うことができますか?1 つのアプローチは、メイン関数の最初にロガーを作成し、ダミーのログ メッセージを作成することです。これにより、必要なフラグが永続的に設定されます。しかし、これを行うより良い方法はありませんか?
「OPは実際のコードを表示する必要があります」に返信して編集します。
L と呼ばれるグローバル ロギング シングルトンがあります。
ログ シンク、重大度レベルを提供し、MPI ノード間で同期されたタイムキーピングのために MPI メソッドを利用します。クラスメンバーの実装は次のとおりです。
使用法について:私のクラスには通常、静的logger_t
( typedef for boost::log::sources::severity_channel_logger<severity_level, std::string>
)メンバーがあります
問題に対する私の現在の解決策は、ログステートメントをプログラムの先頭に置くことです