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

定义存储任务条件和操作

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

重要

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

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

若要了解详细信息,请参阅 存储任务条件中的属性、运算符和操作。

打开条件编辑器

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

Screenshot of the Conditions button and the Conditions editor.

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

定义条件

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

添加和删除子句

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

Screenshot of the Add new clause button and three clauses that were added to the list of clauses.

指定子句的术语

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

选择属性

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

以下示例选择 Blob 名称 属性。

Screenshot of the property drop-down list of a clause.

选择值和运算符

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

以下示例指定与 Ends with 运算符一起的值.log。 此条件允许在此存储任务中定义的操作仅在文件扩展名为 .log 的 Blob 上执行。

Screenshot of an example condition in the visual editor.

在字符串值中使用 wild卡

可以在字符串属性的值中使用*? wild卡 字符。 该 * 字符表示零个或多个字符,而 ? 字符表示完全相同的一个字符。

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

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

从对象元数据引用值

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

在存储帐户中,可以将密钥添加到容器的元数据或 Blob 的索引标记。 该键的值必须是 ISO 8601 格式的时间间隔。 例如,可以添加一个与字符串值一起命名 retainforPT5M 键,该值表示间隔为 5 分钟。

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

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

Screenshot of specifying a key in container metadata as part of the condition definition.

此条件测试 Blob 是否早于相对于现在的某个时间段(当前日期和时间)创建。 例如,如果从retainFor标记检索到的值为 5 分钟,则此条件检查在 5 分钟前创建 Blob 时。

注意

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

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

将 And/Or 应用于子句

将 AndOr 添加到子句。 指定是否要以满足当前子句和条件上一子句中的条件的对象为目标。 指定 以满足当前子句或上一子句中的条件的对象为目标。

以下示例显示使用 And 的子句。 在此示例中,存储任务面向具有 .log 扩展的对象,并且其标记已设置为 Archive-StatusReady

Screenshot of clauses that use the AND operators.

更改子句的顺序

可以按你认为可以提高任务运行性能的顺序排列子句。 例如,可以提升面向特定容器的子句,而不是首先针对名称筛选器测试帐户中的所有 Blob。 这种小调整可以防止任务执行不必要的评估。

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

以下示例显示了选择子句,然后选择 Move 子句向上的结果。

Screenshot of clause appearing in a new position in the list.

分组和取消组合子句

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

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

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

Screenshot of clauses grouped together.

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

预览条件的效果

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

Screenshot of the Preview Conditions button.

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

Screenshot of the Preview Conditions page.

定义操作

操作是对满足任务中定义的条件的每个对象执行的操作。

添加和删除操作

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

Screenshot of the Add new operation button and three operations that were added to the list of operations.

选择操作

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

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

Screenshot of the Operation drop-down list of an operation.

选择参数

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

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

Screenshot of an example condition.

更改操作顺序

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

在此示例中,现有顺序有意义。 首先存档 Blob 并设置标记。 在更改层之前,如果尝试更改 Blob 层未成功,则设置标记就没有意义。 如果集中 Blob 标记操作首先出现在列表中,则可以考虑在设置 Blob 层操作下移动该操作。

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

另请参阅