web-dev-qa-db-ja.com

NLogの最大ファイルサイズを設定する方法

最大ログファイルサイズを設定するためのNLogのオプション/構成はありますか(たとえば5MB)?

私が必要なのは、ログファイルが(私が定義する)最大サイズを超えると、古いファイル(タイムスタンプがファイル名として)をバックアップし、新しいファイルへの書き込みを開始することです。

これはどのように行うことができますか?私はある種の組み込み構成を好みますが、それがない場合は、ログファイルを破損することなく手動で安全に行うことができますか?

8
zig

archiveNumbering="DateAndSequence"およびarchiveAboveSize="5000000"

<targets>
  <target xsi:type="File"
          archiveNumbering="DateAndSequence"
          archiveAboveSize="5000000"
          // other config
</targets>

こちら からこのメモを参照してくださいarchiveAboveSizeを使用している場合

archiveAboveSize-ログファイルが自動的にアーカイブされるバイト数でのサイズ。長い注意:このオプションを有効にすると、マルチプロセスシナリオでファイルのロギングがかなり遅くなる可能性があります。 1つのプロセスのみがファイルに書き込む場合は、最大のパフォーマンスを得るためにConcurrentWritesをfalseに設定することを検討してください。警告:このモードとArchive Numbering Dateの組み合わせはサポートされていません。アーカイブファイルはマージされません。 DateAndSequenceが機能します

8
Hooman Bahreini

archiveAboveSizeがうまくいくはずです。アーカイブの条件として使用されるサイズ(バイト)を設定します...
archiveFileNameにタイムスタンプを設定する場合は、${ticks} に使える。ただし、読みやすくするために、日付とシーケンス番号を組み合わせる方がよいでしょう。

2
Tomas Chabada