本文介绍如何在 Fabric 实时中心浏览 Azure Blob 存储事件。 通过 Azure Blob 存储事件,你可以在 Blob 上发生特定操作时收到通知。 例如,你可以在创建新 Blob 或修改现有 Blob 时收到通知。 这些事件可用于对其他操作或工作流(例如更新数据库或发送通知)设置警报。 本文提供 Azure Blob 存储事件的属性和架构。
备注
如果事件流或激活器的容量区域位于以下区域,则不支持通过 Eventstream 或 Fabric 激活器使用 Fabric 和 Azure 事件:印度西部、以色列中部、韩国中部、卡塔尔中部、新加坡、阿联酋中部、西班牙中部、巴西东南部、美国中部、美国中南部、美国西部 2、美国西部 3。
查看 Azure Blob 存储事件详细信息页
行动
在 Azure Blob 存储事件详细信息页顶部,可以看到以下两个操作。
创建事件流 - 允许根据所选 Azure Blob 存储中的事件创建事件流。
设置警报 - 允许在对 Azure Blob 存储项目执行操作时设置警报。 例如,你可以在创建或删除 Blob 时设置警报。
查看使用此类别的项目
本部分介绍使用 Azure Blob 存储事件的项目。 以下是列表中显示的各列及其描述。
列 | 说明 |
---|---|
Name | 使用 Azure Blob 存储事件的项目名称。 |
类型 | 项目类型 - Activator 或 Eventstream |
工作区 | 工件所在的工作区。 |
来源 | 源(Azure Blob 存储帐户)的名称。 |
Azure Blob 存储事件简介
事件类型
事件类型名称 | 说明 |
---|---|
Microsoft.Storage.BlobCreated | 添加新 Blob 或更新现有 Blob 时,会激活此事件。 该事件由使用 CreateFile 和 FlushWithClose 操作的客户端触发,这些操作可以在 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 功能时,会激活此事件。 |
微软.存储.目录已删除 | 删除目录时,当客户利用 Azure Data Lake Storage Gen2 REST API 中提供的 DeleteDirectory 功能时,会激活此事件。 |
Microsoft.Storage.BlobInventoryPolicyCompleted | 当针对指定为清单策略的策略运行完盘存后,系统将激活此事件。 如果清单运行在开始前因用户错误(例如错误的策略或缺少目标容器)而失败,也会激活它。 |
Microsoft.Storage.LifecyclePolicyCompleted | 此事件是指在执行生命周期管理策略定义的操作时激活该策略。 |
模式
事件包含以下顶级数据:
属性 | 类型 | 说明 | 示例 |
---|---|---|---|
source |
字符串 | 事件源的完整资源路径。 此字段不可写入。 事件网格提供此值。 | /subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account |
subject |
字符串 | 定义了发布者的事件主题路径。 | /blobServices/default/containers/my-file-system/blobs/new-file.txt |
type |
字符串 | 此事件源的一个注册事件类型。 | Microsoft.Storage.BlobCreated |
time |
字符串 | 事件生成的时间基于提供程序的 UTC 时间。 | 2017-06-26T18:41:00.9584103Z |
id |
字符串 | 事件的唯一标识符。 | 00000000-0000-0000-0000-000000000000 |
data |
对象 | Blob 存储事件数据。 | {{Data object}} |
specversion |
字符串 | CloudEvents 架构规范版本。 | 1.0 |
fabricsource |
字符串 | Azure Blob 存储事件源的 Fabric 事件流 ID。 | /tenants/00000000-0000-0000-0000-000000000000/workspaces/00000000-0000-0000-0000-000000000000/items/00000000-0000-0000-0000-000000000000 |
fabricsubject |
字符串 | Azure Blob 存储事件源的事件链接 ID。 | eventLinks/00000000-0000-0000-0000-000000000000 |
data
对象具有以下属性:
属性 | 类型 | 说明 | 示例 |
---|---|---|---|
api |
字符串 | 触发事件的操作。 | CreateFile |
clientRequestId |
字符串 | 客户端提供的用于存储 API 操作的请求 ID。 此 ID 可用于通过 Azure 存储诊断日志中的 client-request-id 字段关联到这些日志,并且可以通过 x-ms-client-request-id 标头提供到客户端请求中。 请参阅日志格式。 |
00000000-0000-0000-0000-000000000000 |
requestId |
字符串 | 服务生成的用于存储 API 操作的请求 ID。 可用于通过 Azure 存储诊断日志中的 request-id-header 字段关联到这些日志,并且由 x-ms-request-id 标头中的初始化 API 调用返回。 请参阅日志格式。 |
00000000-0000-0000-0000-000000000000 |
eTag |
字符串 | 可用于根据条件运行操作的值。 | \"0x8D4BCC2E4835CD0\" |
contentType |
字符串 | 为 Blob 指定的内容类型。 | text/plain |
contentLength |
整数 | Blob 大小,以字节为单位。 | 0 |
blobType |
字符串 | Blob 的类型。 有效值为 BlockBlob 或 PageBlob 。 |
BlockBlob |
contentOffset |
数字 | 在事件触发应用程序完成写入文件时执行的写入操作的偏移量(以字节为单位)。 只有对具有分层命名空间的 Blob 存储帐户触发的事件才显示此值。 |
0 |
destinationUrl |
字符串 | 操作完成后存在的文件的 URL。 例如,如果重命名了某个文件,则 destinationUrl 属性将包含新文件名的 URL。 只有对具有分层命名空间的 Blob 存储帐户触发的事件才显示此值。 |
https://my-storage-account.dfs.core.windows.net/my-file-system/new-file.txt |
sourceUrl |
字符串 | 执行操作之前存在的文件的 URL。 例如,如果重命名了某个文件,则 sourceUrl 将包含执行重命名操作之前的原始文件名的 URL。 只有对具有分层命名空间的 Blob 存储帐户触发的事件才显示此值。 |
https://my-storage-account.dfs.core.windows.net/my-file-system/my-original-directory |
url |
字符串 | Blob 的路径。 如果客户端使用 Blob REST API,则 URL 采用以下结构: |
https://myaccount.blob.core.windows.net/container01/file.txt |
recursive |
字符串 | 要对所有子目录执行该操作,则此值为 True;否则此值为 False。 只有对具有分层命名空间的 Blob 存储帐户触发的事件才显示此值。 |
true |
sequencer |
字符串 | 一个不透明的字符串值,表示任何特定 blob 名称的事件的逻辑顺序。 用户可以使用标准字符串比较,了解同一个 blob 名称上两个事件的相对序列。 | 00000000000004420000000000028963 |
identity |
字符串 | 一个字符串值,表示与事件关联的标识。 对于安全文件传输协议 (SFTP),该值是本地用户名。 | localuser |
storageDiagnostics |
对象 | Azure 存储服务中偶尔附带的诊断数据。 出现时,事件使用者应忽略它。 | {{Storage diagnostic object}} |
订阅权限
如需更多信息,请参阅 Fabric 事件的订阅权限。