【发布时间】:2021-02-02 17:16:57
【问题描述】:
我正在试用 Azure Blob Change Feed 功能,但它对 Append Blob 的行为很奇怪:Feed 中缺少追加事件。
我的情况是:
-
创建存储帐户,启用更改提要功能: Change feed enabled
-
如果不存在则创建附加 Blob (1) 并将一些输入附加到其中 (2)。
private void WriteBlob(string input) { MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(input)); try { if (client == null) { var credential = new ClientSecretCredential("...", "..."); client = new AppendBlobClient(new Uri("..."), credential); } client.CreateIfNotExists(); // (1) client.AppendBlock(stream); // (2) } catch (Exception ex) { Console.WriteLine(ex.Message); } } -
在单独的控制台应用程序中获取更改提要条目。
public static List<BlobChangeFeedEvent> GetChanges() { var credential = new ClientSecretCredential("...", "..."); BlobChangeFeedClient blobChangeFeedClient = new BlobChangeFeedClient(new Uri("..."), credential); List<BlobChangeFeedEvent> events = new List<BlobChangeFeedEvent>(); foreach (BlobChangeFeedEvent changeFeedEvent in blobChangeFeedClient.GetChanges()) { events.Add(changeFeedEvent); } return events; }
问题在于,在运行了几次WriteBlob 方法后,我只收到了与 blob 创建相对应的单个更改提要事件,并且提要中缺少后续附加,但是输入已成功附加到 blob 资源。
问题是为什么它会这样工作?我没有发现关于在文档中更改提要的附加 Blob blob 类型有什么特别之处。
【问题讨论】:
-
不支持“追加事件类型”,您可以参考下面的答案了解更多详情。如果答案有帮助,您能否按照this link 接受它作为答案?谢谢。
标签: azure azure-blob-storage azure-storage-account