2016-08-29 5 views
0

C#でWindowsサービスを開発していますが、これはおそらく1秒間に数回ログに書き込まれます。私は現在、各操作にSystem.IO.File.AppendAllText(time + message)を使用しており、多くの書き込みがディスクをすぐに消耗させることが懸念されます。頻繁なディスクログの書き込みを行うベストプラクティス

これは問題がありますか?ストリームを使用して数秒ごとにフラッシュする必要がありますか? Windowsのディスクバッファはこれに対して保護しますか?

+0

その他の情報:並行性?異常終了?発信者の遅延?ログの最大サイズ?正直なところ...単なる運動ではない場合は、NLogのようなロギングフレームワークを選ぶ方がよいでしょう。 –

+0

一般的なウェブ上には、これに関する_lot_情報があります。人々がすでにそこにあることを繰り返していく前に、[ask]を読んで研究を共有してください。 – CodeCaster

+0

アドリアーノありがとう、私は手動でこれらの問題のいくつかに対処し、他の人を考慮していない。私は、表面的にはlog4netを見て、それを過大なものとして使用する考えを捨てましたが、私はそれを必要としているようです。 コードキャスターは、私の懸念事項であるため、ディスクの損傷に関する検索に集中しました。プログラミングに関連していないものとほとんど無視されている質問が見つかりました。 「すべてのデータを保証する方法...」の質問をいただき、ありがとうございます。 –

答えて

2

なぜあなたは車輪を再発明したいですか? いくつかの準備が整ったframeworkを使用してください。 Log4Net,NLog,SeriLog

「ストリームを使用して数秒ごとにフラッシュする必要がありますか?」

フラッシュストリームを使用せずにアプリがクラッシュした場合はどうなりますか?ログが消えて、何が起こるかわからない。

関連する問題