我想要将日志信息写入存储在Azure文件存储中的日志文件中。目前我有以下代码:
var log = "My log entry";
var client = _storageAccount.CreateCloudFileClient();
var share = client.GetShareReference(Config.LogShare);
share.CreateIfNotExists();
var root = share.GetRootDirectoryReference();
var logfile = root.GetFileReference("log.txt");
if (!logfile.Exists()) logfile.Create(0);
// What goes here to append to the file...?
我看到很多关于如何使用Blob的例子或者上传整个文件的示例,但是如何只追加到现有文件呢?
我尝试了以下方法:
var buffer = Encoding.GetEncoding("UTF-8").GetBytes(log.ToCharArray());
using (var fileStream = logfile.OpenWrite(0)) {
fileStream.Write(buffer, (int)logfile.Properties.Length, buffer.Length);
}
但是我遇到了这个错误:
The remote server returned an error: (416) The range specified is invalid for the current size of the resource..