問題タブ [glog]
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++ - Google glog でのモジュール単位の詳細ログ
ロギングには Google glogを使用しています。path のディレクトリにファイルがありますdir/file.cc
。
このファイルだけで詳細ログ レベル 5 を有効にしたいと考えています。GLOG_vmodule="file=5"
そのため、環境にエクスポートしてからプログラムを実行します。VLOG(5)
しかし、glog はまだこのファイルにメッセージを記録しません。設定方法に問題はありますvmodule
か?誰かがこれをどのように行うべきかの例を教えてもらえますか?
c++ - __write_nocancel でフリーズ
だから私は散発的にフリーズしているかなり実質的なプログラムを持っています。
このプログラムは、Qt、オープン シーン グラフ、Google ロギングを使用します。このフリーズは、Google ログの印刷中に発生します。プログラム自体が大量のデバッグ情報を出力しています。gdb-server 経由でプログラムに接続できました。これがスタック トレースです。
...
フリーズ自体が で発生していることに注意してください__write_nocancel
。実行中のスレッドは 1 つだけです...
(gdb) 情報スレッド Id ターゲット Id フレーム
* 1 スレッド 21507 0x000000397ac0e030 in __write_nocancel () at ../sysdeps/unix/syscall-template.S:82
フリーズの原因について何か考えはありますか?他に役立つ情報を教えてください。
c++ - Google ログエントリはミューテックスでラップされていますか?
Google のロギング ライブラリ (glog-0.3.2) を使用して、ログに送信される個々のエントリはミューテックスによってラップされていますか? つまり、現在保存されているエントリが他のエントリによって破損する可能性はありますか?
私はそれが次のように翻訳されると思います: is glog threadsafe?
また、ロガーがファイルだけでなくコンソールにもエコーするように設定されている場合、独自のミューテックスを持たない限り、からの出力をブロックprintf
/cout
破損する方法はありますLOG()
か? おそらく、複数のステートメントをラップできるミューテックスをロックする方法があるのではないかと思いました。
googletest - gtest と glog のリンク
glog によって生成されたログ ファイルで gtest の出力を取得する方法はありますか? 理想的には、テストが失敗した場合は重大度エラーでストリーミングし、それ以外の場合は情報を提供します。手動でもできますが、既存のツールで簡単にできるかどうか疑問に思っていました。
gtest を使用して生成された XML ではなく、glog 出力にのみ関心がありますRecordProperty
。
c++ - C++ ロガーのパフォーマンスと移植性
将来サーバーにデプロイする必要がある C++ アプリケーションを作成しています (おそらく node.js C++ モジュールとして)。
開発プロセス中に役立つロギング ライブラリが本当に必要です。現在、log4cxx を使用していますが、コードを移植可能にする必要があるため、プロジェクトに含めるソース ファイルが必要です。また、ロギングがオンでもオフでも、アプリケーションの速度を低下させない C++ ロガーを実行する必要があります。誰でもこの選択を手伝ってもらえますか? 私のオプションは次のとおりです。
- Log4cplus : シンプルで使いやすく、拡張も容易です。しかし、パフォーマンス?
- Google-Glog : 最も使いやすく、非常に高速です。ただ、コンパイルが必要で、システムフラグを使っているので、node.jsで使うと問題ないかな。
c++ - glogライブラリとのリンク
glogロギングライブラリ(LINK)を使用しようとしています。VS2012(私はWindows 8 Professional 64ビット(日本語)を使用しています)では、ドキュメント(LINK)にあるような単一のmain.cppファイルを使用して空のソリューションを作成します。また、ソリューション内にglogプロジェクト(dll 1または静的ライブラリ1)をインポートし、プロジェクトの依存関係を設定します。いくつかのエラーを回避するために、port.hの97行目をコメントアウトする必要があります。
glogのコンパイル中に、メインアプリケーションから未解決の外部シンボルエラー(dllと静的バージョンの両方)が表示されます。
Win32としてコンパイルしています。デバッグフォルダを確認すると、実際にはdll+libまたは静的libファイルが含まれています。Visual Studioの依存関係システムを使用せずに手動でライブラリにリンクしようとしましたが、同じです。
c++11 - configure に -stdlib=libc++ オプションが渡されたにもかかわらず、libstdc++ を使用した Autotools/libtool リンク ライブラリ
次のオプションを使用して、Mac OS X 10.8 で google-glog をビルドしようとしています。
./configure CXX='clang++' CXXFLAGS='-std=c++11 -stdlib=libc++'
それにもかかわらず、ライブラリは libstdc++ とリンクされます。
なぜ、そしてこれを修正する方法は?