6

Log4Net イベントを SQL データベースに挿入しています。メッセージ フィールドと例外フィールドはどちらも 8000 文字ですが、8000 文字を超えるイベントが発生し、データが切り詰められることがあります。

イベントを複数の行に分割する構成可能な方法はありますか? そうでない場合は、切り捨てられたデータを取得しないように、ログ イベントのチャンクを自動的に処理する独自の ILog を実装することを現在考えています。誰かがより良いアイデアを持っていますか?

編集 - ログ構成 / データベース列の定義

ここに私の現在のパラメータ設定があります:

<parameter>
  <parameterName value="@message"/>
  <dbType value="String"/>
  <size value="8000"/>
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%message"/>
  </layout>
</parameter>
<parameter>
  <parameterName value="@exception"/>
  <dbType value="String"/>
  <size value="8000"/>
  <layout type="log4net.Layout.ExceptionLayout"/>
</parameter>

データベース テーブルは次のように定義されます。

[Message] [nvarchar](max) NULL,
[Exeception] [ntext] NULL,
4

2 に答える 2