2016-10-11 17 views
0

バッファがいっぱいになったらlogcatをファイルに出力してから、ログメッセージが失われることなくバッファをクリアできますか?logcatをファイルに出力し、ログを失うことなくバッファをフラッシュします。

私はlogcat -dが出力して終了することを知っています。-cは現在のログをすべてクリアしますが、それは理想的ではありません。

これは、ファイルを書き込んでからバッファをフラッシュするまでの間に、より多くのログをlogcatに送信する競合状態になる可能性があります。

+0

屋がやって何を理解できない、いくつかのコードを追加します。 –

+0

あなたが達成しようとしていることがわかりません。アンドロイドのログに代わるものが必要な場合は、https://github.com/JakeWharton/timberをご覧ください。それは素晴らしいライブラリであり、あなたはそのライブラリを使用して任意のもの(あなたのケースのファイル)にログメッセージを出力することができます – Sudara

+0

私の目標は、バッファにあるときにファイルに出力するデバイス上でサービスとして常に実行することです。ファイルの出力と消去の間にバッファにログメッセージが入力されることなく、バッファをいっぱいにしてクリアします。 – Kurter21

答えて

0

これはおそらく動作します:

logcat -d -f /out.txt && logcat -c 
+0

私はそれを試して、それは動作します。それをbashループに入れ、logcatをout.txtに出力し続け、次の出力の前にバッファをクリアする必要があります。 -dは出力してから停止することを指示します。 -fはファイルにダンプするよう指示します。 &&は、同じ行に2つの連続した文を実行するbash方法です。 -fはlogcatバッファをクリアします。 – AlfredP

関連する問題