ログ ファイルを BLOB ストレージに同期する際に問題があります。実際には、ログ ファイルを BLOB ストレージに同期できますが、その後、プロジェクトを azure に新しくデプロイすると、ファイル名は同じままですが、プロジェクト ファイルが変更され、ログ ファイルの内容も変更されます。したがって、WebRole はログ ファイルの同期を試みて実行しますが、ファイル名が原因でファイルが上書きされ、ブロブ ストレージ内のすべてのデータが失われます。さまざまな展開のログ ファイルを保持するにはどうすればよいですか? 説明できるといいのですが、私の英語で申し訳ありません。
1 に答える
0
使用する前にファイル名を変更できます。File プロパティをオーバーライドすることで、任意の一意のプレフィックス (DeploymentID、TimeTicks、GUID...) をファイル名に追加できます。
public class AzureLocalStorageAppender:RollingFileAppender
{
public override string File
{
get
{
//Trace.WriteLine("get_"+base.File);
return base.File;
}
set
{
base.File = RoleEnvironment.GetLocalResource("LocalResourceNameHere").RootPath + @"\"
+ "_" + Guid.NewGuid().ToString()
+ new FileInfo(value).Name;
//Trace.WriteLine(base.File);
}
}
}
于 2013-08-27T06:48:37.347 に答える