你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

定义存储任务条件和操作

可以使用可视化编辑器定义存储任务的条件和操作。

重要

Azure 存储操作目前为预览版,已在这些区域中提供。 有关 beta 版本、预览版或尚未正式发布的版本的 Azure 功能所适用的法律条款,请参阅 Microsoft Azure 预览版的补充使用条款

操作是对满足任务中所定义条件的每个对象采取的措施。 条件包含一个或多个条件子句。 每个子句都定义属性和值之间的关系。 若要执行存储任务中定义的操作,每个对象必须满足该关系的条款。

打开条件编辑器

在 Azure 门户中导航到存储帐户,然后在“存储任务管理”下选择“条件”。

“条件”按钮和“条件”编辑器的屏幕截图。

此时会显示“条件”窗格的“视觉生成器”选项卡

定义条件

通过添加子句来定义条件。 子句定义属性和值之间的关系。 若要执行存储任务中定义的操作,每个对象必须满足该关系的条款。

添加和删除子句

若要添加子句,请选择“添加新子句”;若要删除子句,请选择子句旁边显示的删除图标 ()。

“添加新子句”按钮和添加到子句列表中的三个子句的屏幕截图。

指定子句的条款

若要定义子句,请选择一个属性,为该属性指定值,然后选择一个运算符将它们关联在一起。

选择属性

在“Blob 属性”下拉列表中,选择一个属性。 请参阅支持的 Blob 属性

以下示例选择的是“Blob 名称”属性

子句的属性下拉列表的屏幕截图。

选择值和运算符

在“属性值”框中输入值,然后在“运算符”下拉列表中选择运算符。 请参阅支持的运算符

以下示例指定 .log 的值以及“结尾为”运算符。 采用此条件,可以仅对具有 .log 文件扩展名的 Blob 执行此存储任务中定义的操作。

可视化编辑器中示例条件的屏幕截图。

在字符串值中使用通配符

可以在字符串属性的值中使用 *? 通配符。 * 字符表示零个或多个字符,而 ? 字符表示恰好一个字符。

例如,如果希望子句仅对作为 Word 文档的 Blob 的计算结果为 true,则使用字符串 *.docx。 但是,如果只想使用单个字符(如 1.docx2.docx)命名文档,则可以使用字符串 ?.docx

可以在字符串中的任意位置使用 *?。 可以通过在字符前面添加 \ 来转义这些字符。

引用对象元数据中的值

包含日期和时间属性的子句可以引用容器元数据或 Blob 索引标记中的值。 执行任务时,这些值是在运行时动态获取的。

在存储帐户中,你可以将键添加到容器的元数据或 Blob 的索引标记。 该键的值必须是 ISO 8601 格式的时间间隔。 例如,你可能会添加名为 retainfor 的键,并添加字符串值 PT5M 来表示五分钟的间隔。

若要引用键,请选择“属性值”列中出现的“编辑”链接。 然后,在“选择值”对话框中,选择“容器元数据”或“Blob 索引标记”

以下示例添加“创建时间”属性和“早于”运算符,并在计算的每个 Blob 的索引标记中引用名为 retainFor 的键

将容器元数据中的键指定为条件定义的一部分的屏幕截图。

此条件测试 Blob 的创建时间是否要比现在(当前日期和时间)早一定的持续时间。 例如,如果从 retainFor 标记检索到的值为五分钟,则此条件将检查 Blob 是否是在 5 分钟之前创建的。

注意

在“代码”选项卡中,你将看到此示例逻辑的表示方式略有不同。 生成的代码测试当前时间是否大于创建时间加上时间间隔。 这两种表示形式产生的结果相同。

如果计算对象不存在键,则该条件的计算结果为 false。 如果键值是不符合 ISO 8601 标准的字符串,则会在执行报告中报告错误。

将 And/Or 应用于子句

向子句中添加“And”或“Or”。 如果希望目标对象同时满足条件当前子句和前一个子句中的条件,请指定“And”。 如果希望目标对象满足当前子句或前一个子句中的条件,请指定“Or”

以下示例显示了使用“And”的子句。 在此示例中,存储任务的目标对象是具有 .log 扩展名且 Archive-Status 标记设置为 Ready 的对象。

使用 AND 运算符的子句的屏幕截图。

更改子句的顺序

可以按你认为能够提高任务运行性能的顺序来排列子句。 例如,你可能会提升以特定容器为目标的子句,而不是先根据名称筛选器测试帐户中的所有 Blob。 这种小调整可以防止任务执行不必要的计算。

首先,选择子句。 然后,选择“上移子句”或“下移子句”以更改其在列表中的位置

以下示例显示了先选择子句再选择“上移子句”的结果

子句出现在列表中的新位置的屏幕截图。

组合和取消组合子句

分组的子句作为独立于子句的其余部分的一个单元来运行。 对子句进行分组类似于在数学等式或逻辑表达式两侧加上括号。 组中第一个子句的“And”或“Or”运算符将应用于整个组。

选中要组合在一起的每个子句旁边的复选框。 然后选择“组合”

下列示例显示了组合在一起的两个条件。 在此示例中,如果 Blob 具有 .log 扩展名且名为 Archive-Status 的标记设置为值 Ready,或者 120 天内未访问该文件,则执行操作。

组合在一起的子句的屏幕截图。

若要取消组合子句,请选择取消组合图标 (),或选择组中的每个子句,然后选择“取消组合”

预览条件的效果

可以查看受定义的条件影响的 Blob 列表。 在条件编辑器中,选择“预览条件”

“预览条件”按钮的屏幕截图。

在“预览条件”中,可以指定目标订阅、存储帐户和容器。 由于预览最多只能显示 5000 个 Blob,因此还可以指定前缀来缩小列表范围。

“预览条件”页面的屏幕截图。

定义操作

操作是对满足任务中所定义条件的每个对象采取的措施。

添加和删除操作

若要添加操作,请选择“添加新操作”;若要删除操作,请选择操作旁边显示的删除图标 ()。

“添加新操作”按钮和添加到操作列表中的三个操作的屏幕截图。

选择操作

在“操作”下拉列表中,选择一个操作。 请参阅支持的操作

以下示例选择的是“设置 Blob 标记”属性

操作的“操作”下拉列表的屏幕截图。

选择参数

输入或选择适合操作的参数。

以下示例将 Archive-Status 标记设置为值 Archived

示例条件的屏幕截图。

更改操作的顺序

可以按任意顺序排列操作。

在此示例中,现有顺序比较合理。 先存档 Blob 再设置标记。 更改层之前就设置标签并不合理,以防万一更改 Blob 层的尝试失败。 如果设置 Blob 标记操作首先出现在列表中,则可以考虑将此操作移动到设置 Blob 层操作之下。

若要移动操作,请选中操作旁边显示的复选框。 然后,选择“上移操作”或“下移操作”以更改其在列表中的位置

另请参阅