プログラムを中心とした個人的なメモ用のブログです。 タイトルは迷走中。
内容の保証はできませんのであしからずご了承ください。

2017/09/13

Log4View で NLog のログを閲覧する

event_note2017/09/13 6:38

Log4View で NLog のログを閲覧するためのレイアウトパターンの設定例です。
ただし、いくつか解決できていないことがあります。

Log4View は数あるログビューワーのうちの1つです。

NLog の例

NLog.config で以下のように設定している場合を例とします。

<layout xsi:type="CsvLayout" delimiter="Tab" withHeader="false">
        <column name="level" layout="${level:padding=-5}"/>
        <column name="time" layout="${date}" />
        <column name="processname" layout="${appName} " />
        <column name="threadid" layout="${threadid:padding=4}" />
        <column name="message" layout="[${message}]" />
        <column name="callsite" layout="${callsite}#${callsite-linenumber}" />
        <column name="stacktrace" layout="${stacktrace:topFrames=10}" />
        <column name="exception" layout="${exception:format=Type,message,Stack Trace:separator=|}"/>
      </layout>

Log4View の設定例

ログファイルをドラッグ&ドロップし、以下のように設定します。

注意事項は以下の2点です(かなりはまった・・・)。

  • Log FormatNLog を選択する
  • Layout Pattern のデリミターのタブはコピペしてくる
${level} ${date:format=yyyy/MM/dd HH\:mm\:ss.fff} ${logger} ${threadid} ${message} ${callsite} ${stacktrace} ${exception}

あと解決できていないこととして、行番号が取得できていません。
${callsite-linenumber} を指定しても抽出できなかったので、Log4View 自体が対応していないのではないかと思っています。