本番環境で例外などをロギングするためのスタックトレース(ファイル名と行番号)情報を取得したいと考えています。DLL は GAC にインストールされます。これを行う方法はありますか?
この記事では、PDB ファイルを GAC に配置する方法について説明しています。
これらは、デバッグ シンボル (.pdb ファイル) を GAC にコピーする必要があると表示されるため、簡単に見つけることができます。それ自体では、それは機能しません。
この記事は VS を使用したデバッグに言及していることは知っていますが、スタックトレースのログ記録にも当てはまると思いました。
オプションであると言った最適化コードのチェックを外すことを除いて、この質問への回答の指示に従いました。
dll と pdb を GAC にコピーしましたが、まだスタック トレース情報を取得できません。スタック トレースのログ ファイルには次のように記録されます。
OnAuthenticate at offset 161 in file:line:column <filename unknown>:0:0
ValidateUser at offset 427 in file:line:column <filename unknown>:0:0
LogException at offset 218 in file:line:column <filename unknown>:0:0
Nログを使用しています。
私のNLogレイアウトは次のとおりです。
layout="${date:format=s}|${level}|${callsite}|${identity}|${message}|${stacktrace:format=Raw}"
${stacktrace:format=Raw} が関連部分です。