私は複数のASP .NET MVCとWeb AziアプリケーションをAzureでホストしています。 私は展開のためにステージとPRODという2つの異なるステージを使用します。基本的には、logs-stageとlogs-PRODという2つの異なるログ用フォルダが必要です。これは、Azureで直接設定されたweb.configとプロパティに基づいてうまく機能しています。Azure Webアプリケーションの削除ログディレクトリのスワップ
問題は、展開するたびにすべての以前のログが削除されることです。どうすればそれを避けることができますか?
私NLogの設定は、次のようになります
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<targets>
<target xsi:type="File" name="f" fileName="${basedir}/logs-${appsetting:name=Version:default=DEV}/website.${shortdate}.log"
layout="${longdate} ${uppercase:${level}} ${logger} - ${message}" />
<target name="email-Errors" xsi:type="Mail"
smtpServer="smtp.sendgrid.net"
smtpPort="myPort"
enableSsl="false"
smtpUsername="myUsername"
smtpPassword="myPassword"
smtpAuthentication="Basic"
from="myEmail"
to="${appsetting:name=WEBSITE_EMAIL_DEVELOPERS:default=myEmail}"
subject="[${appsetting:name=Version:default=DEV}][WEB][${uppercase:${level}}]"
layout="${longdate} ${uppercase:${level}} ${logger} - ${message}"
html="false" />
</targets>
<rules>
<logger name="*" minlevel="Trace" writeTo="f" />
<logger name="*" minlevel="Error" writeTo="email-Errors" />
</rules>
</nlog>
これにより、公開時にログフォルダが削除されなくなります。私はステージスロットをPRODスロットに交換するので、私はまだ以前のファイルを失っています。 – PMerlet
私は答えを更新しました。 –