2

デバッグ目的でログファイルを書き込むためにnlogを使用しています。現在、ログファイルの場所は次のように設定されています。

<target 
    name="file" 
    xsi:type="File" 
    fileName="${specialfolder:folder=LocalApplicationData}/x/y.log" 

ただし、これにより、asp.net / IISがアカウントで実行されている場合に予想されるように、ファイルがでc:\x\y.logはなく、に書き込まれることになります。%windir%\ServiceProfiles\NetworkService\AppData\Local\x\y.logNETWORK SERVICE

Webアプリケーションからの値をチェックするEnvironment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)と、空/ヌルの文字列が生成されます。これは、少なくとも、ログがルートで終了する理由を説明しています。

だから本当に2つの質問:

NETWORK SERVICEこのパスを正しく解決するアカウントで作成および実行されているサービスがあります。この特別なフォルダーに値が返されないようなasp.net/IISの特別な点は何ですか?

NETWORK SERVICE私のasp.netプロセスがアカウントで実行されている場合、ログを書き込むための安全で賢明な場所はどこにありますか?

4

1 に答える 1