ASP.NET

log4net 出力ファイルの文字コードと区切り文字を変更する

log4netの出力ファイルの文字コードがデフォルトでSJISになっていたので、UTF-8に変更しました。

区切り文字をスペースではなく、タブ変更してみる。

Web.configに以下の設定を追加するだけでOKでした。

文字コード

<Encoding value="UTF-8"/>

区切り文字(タブにする)

タブにしたい部分に以下を挿入。

&#x9;

<log4net>
  <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value=".\Log\SysLog\SysLog" />
    <param name="AppendToFile" value="true" />
    <param name="RollingStyle" value="Date" />
     :
    <layout type="log4net.Layout.PatternLayout">
      <param name="Header" value="----------[Logging start]----------&#xD;&#xA;" />
      <param name="Footer" value="----------[Logging end  ]----------&#xD;&#xA;" />
      <param name="ConversionPattern" value="%d&#x9;[%t]&#x9;%-5p&#x9;%C&#x9;%L&#x9;-&#x9;%m%n" />
    </layout>
    <Encoding value="UTF-8"/>
  </appender>
</log4net>

こんな感じに。

-ASP.NET