在 Fabric 实时中心浏览 Azure Blob 存储事件

本文介绍如何在 Fabric 实时中心浏览 Azure Blob 存储事件。 通过 Azure Blob 存储事件,你可以在 Blob 上发生特定操作时收到通知。 例如,你可以在创建新 Blob 或修改现有 Blob 时收到通知。 这些事件可用于对其他操作或工作流(例如更新数据库或发送通知)设置警报。 本文提供 Azure Blob 存储事件的属性和架构。

注意

此功能目前处于预览状态。

注意

如果事件流或 Fabric Activator 的容量区域位于以下区域:德国中西部、美国中南部、美国西部 2、美国西部 3 或印度西部,则不支持通过事件流或 Fabric Activator 使用 Fabric 和 Azure 事件。

查看 Azure Blob 存储事件详细信息页

  1. 在实时中心,选择左侧导航菜单中的“Azure 事件”

  2. 在列表中选择“Azure Blob 存储事件”

    显示“Azure 事件”页中选择 Azure Blob 存储事件的屏幕截图。

  3. 应会看到 Azure Blob 存储事件详细信息页。

    显示 Azure Blob 存储事件详细信息页的屏幕截图。

操作

在 Azure Blob 存储事件详细信息页顶部,可以看到以下两个操作。

  • 创建事件流 - 允许根据所选 Azure Blob 存储中的事件创建事件流。

  • 设置警报 - 允许在对 Azure Blob 存储项目执行操作时设置警报。 例如,你可以在创建或删除 Blob 时设置警报。

    显示 Azure Blob 存储事件详细信息页的“操作”部分的屏幕截图。

查看使用此类别的内容

本节介绍使用 Azure Blob 存储事件的项目。 以下是列表中显示的列及其描述。

说明
Name 使用 Azure Blob 存储事件的项目名称。
类型 项目类型 - Activator 或 Eventstream
工作区 项目所在的工作区。
Source 源(Azure Blob 存储帐户)的名称。

显示 Azure Blob 存储事件详细信息页的“查看使用此类别的内容”部分的屏幕截图。

Azure Blob 存储事件配置文件

显示 Azure Blob 存储事件详细信息页的“事件配置文件”部分的屏幕截图。

事件类型

事件类型名称 说明
Microsoft.Storage.BlobCreated 添加新 Blob 或更新现有 Blob 时,会激活此事件。 该事件由使用 CreateFileFlushWithClose 操作的客户端触发,这些操作可以在 Azure Data Lake Storage Gen2 REST API 中找到。
Microsoft.Storage.BlobDeleted 删除 Blob 时会激活此事件。 当客户端使用 DeleteFile 操作(可以在 Azure Data Lake Storage Gen2 REST API 中找到)时,会触发此事件。
Microsoft.Storage.BlobRenamed 当 Blob 进行名称更改时,特别是当用户使用 Azure Data Lake Storage Gen2 REST API 中的 RenameFile 函数时,会激活此事件。
Microsoft.Storage.BlobTierChanged 当通过 Blob REST API 中的 SetBlobTier 操作修改 Blob 访问层时会激活此事件,并在完全处理更改后触发此事件。
Microsoft.Storage.AsyncOperationInitiated 将数据从存档层移动或复制到热层或冷层时,会发生此事件。 当客户端使用 SetBlobTier API 将 Blob 从存档层移到热层或冷层时,或者当客户端使用 CopyBlob API 将数据从存档层 Blob 复制到热层或冷层 Blob 时,会发生这种情况。
Microsoft.Storage.DirectoryCreated 当创建新目录,或者客户端利用 Azure Data Lake Storage Gen2 REST API 中提供的 CreateDirectory 操作来形成新目录时,会激活此事件。
Microsoft.Storage.DirectoryRenamed 当目录进行名称更改时,特别是当客户端利用 Azure Data Lake Storage Gen2 REST API 中的 RenameDirectory 功能时,会激活此事件。
Microsoft.Storage.DirectoryDeleted 删除目录时,当客户利用 Azure Data Lake Storage Gen2 REST API 中提供的 DeleteDirectory 功能时,会激活此事件。
Microsoft.Storage.BlobInventoryPolicyCompleted 当清单运行完成指定为清单策略的策略时,会激活此事件。 如果清单运行在开始前因用户错误(例如错误的策略或缺少目标容器)而失败,也会激活它。
Microsoft.Storage.LifecyclePolicyCompleted 此事件是指在执行生命周期管理策略定义的操作时激活该策略。

架构

事件具有以下顶级数据:

属性 类型​​ 说明 示例
source string 事件源的完整资源路径。 此字段不可写入。 事件网格提供此值。 /subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account
subject string 事件主题的发布者定义路径。 /blobServices/default/containers/my-file-system/blobs/new-file.txt
type string 此事件源的一个注册事件类型。 Microsoft.Storage.BlobCreated
time string 基于提供程序 UTC 时间的事件生成时间。 2017-06-26T18:41:00.9584103Z
id string 事件的唯一标识符。 00000000-0000-0000-0000-000000000000
data object Blob 存储事件数据。 {{Data object}}
specversion 字符串 CloudEvents 架构规范版本。 1.0
fabricsource string Azure Blob 存储事件源的 Fabric eventstream ID。 /tenants/00000000-0000-0000-0000-000000000000/workspaces/00000000-0000-0000-0000-000000000000/items/00000000-0000-0000-0000-000000000000
fabricsubject string Azure Blob 存储事件源的事件链接 ID。 eventLinks/00000000-0000-0000-0000-000000000000

data 对象具有以下属性:

属性 类型​​ 说明 示例
api string 触发事件的操作。 CreateFile
clientRequestId string 客户端提供的用于存储 API 操作的请求 ID。 此 ID 可用于通过 Azure 存储诊断日志中的 client-request-id 字段关联到这些日志,并且可以通过 x-ms-client-request-id 标头提供到客户端请求中。 请参阅日志格式 00000000-0000-0000-0000-000000000000
requestId string 服务生成的用于存储 API 操作的请求 ID。 可用于通过 Azure 存储诊断日志中的 request-id-header 字段关联到这些日志,并且由 x-ms-request-id 标头中的初始化 API 调用返回。 请参阅日志格式 00000000-0000-0000-0000-000000000000
eTag string 可用于根据条件运行操作的值。 \"0x8D4BCC2E4835CD0\"
contentType string 为 Blob 指定的内容类型。 text/plain
contentLength integer Blob 大小,以字节为单位。 0
blobType string Blob 的类型。 有效值为 BlockBlobPageBlob BlockBlob
contentOffset 数字 在事件触发应用程序完成写入文件时执行的写入操作的偏移量(以字节为单位)。

只有对具有分层命名空间的 Blob 存储帐户触发的事件才显示此值。

0
destinationUrl string 操作完成后存在的文件的 URL。 例如,如果重命名了某个文件,则 destinationUrl 属性将包含新文件名的 URL。

只有对具有分层命名空间的 Blob 存储帐户触发的事件才显示此值。

https://my-storage-account.dfs.core.windows.net/my-file-system/new-file.txt
sourceUrl string 执行操作之前存在的文件的 URL。 例如,如果重命名了某个文件,则 sourceUrl 将包含执行重命名操作之前的原始文件名的 URL。

只有对具有分层命名空间的 Blob 存储帐户触发的事件才显示此值。

https://my-storage-account.dfs.core.windows.net/my-file-system/my-original-directory
url string Blob 的路径。

如果客户端使用 Blob REST API,则 URL 采用以下结构:<storage-account-name>.blob.core.windows.net\<container-name>\<file-name>。 如果客户端使用 Data Lake Storage REST API,则 URL 采用以下结构:<storage-account-name>.dfs.core.windows.net/<file-system-name>/<file-name>

https://myaccount.blob.core.windows.net/container01/file.txt
recursive string 要对所有子目录执行该操作,则此值为 True;否则此值为 False。

只有对具有分层命名空间的 Blob 存储帐户触发的事件才显示此值。

true
sequencer string 一个不透明的字符串值,表示任何特定 blob 名称的事件的逻辑顺序。 用户可以使用标准字符串比较,了解同一个 blob 名称上两个事件的相对序列。 00000000000004420000000000028963
identity string 一个字符串值,表示与事件关联的标识。 对于安全文件传输协议 (SFTP),该值是本地用户名。 localuser
storageDiagnostics object Azure 存储服务中偶尔附带的诊断数据。 如果存在,事件使用者应忽略它。 {{Storage diagnostic object}}