9

RT-Linuxで実行される標準アプリケーションとリアルタイムアプリケーションの両方を開発しています。問題は、リアルタイムプロセスと非リアルタイムプロセスの両方からのアプリケーショントレースをログに記録する効率的な方法は何でしょうか。

効率的とは、アプリケーショントレースをログに記録するプロセスが、遅延の増加などによってRT-perfヒットを引き起こしてはならないことを意味します。

プロセス間の相互作用を追跡しやすくするために、トレースはタイムスタンプ付きの単一のファイルに保存するのが理想的です。

4

2 に答える 2

4

リアルタイムロギングの場合、ファイルへのベアロギングとは異なるアプローチを使用することをお勧めします。ファイルに多くの情報書き込むと、パフォーマンスが低下します。

私は他のより軽いメカニズムにアドバイスすることができます:

  • 統計/カウンターを使用して、アプリケーションが実行していることを埋めます
  • オフラインで処理するために、ログをバイナリ形式で書き込み/エンコードします。このバイナリ形式は、よりコンパクトで軽量になる可能性があります。
于 2013-01-23T21:35:48.570 に答える
1

Linuxを使用しているため、syslog()を使用できます。

openlog()は、プログラムのシステムロガーへの接続を開きます。

これは、プログラムがメッセージを別のプログラムに転送することを意味します。このプログラムの優先度は低い可能性があります。

もっと凝ったものが必要な場合は、ロギングをブーストします。

于 2013-01-23T21:35:28.257 に答える