你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
适用于:Azure 逻辑应用(消耗型 + 标准型)
要设置可处理连续或相邻区块中的数据的工作流,请使用滑动窗口触发器启动工作流。 要启动工作流,可以设置日期、时间和时区。 要重复工作流,请设置重复周期。 如果因任何原因(例如中断或禁用工作流)错过了重复周期,则此触发器将处理错过的重复周期。
例如,要使数据在数据库和备份存储之间保持同步,请使用滑动窗口触发器,使数据同步而不会产生差距。
下面是此触发器支持的一些模式:
- 立即运行,并每隔 n 秒、分钟、小时、天、周或月重复运行。
- 在特定的日期和时间启动,然后运行并每隔 n 秒、分钟、小时、天、周或月重复运行。 使用此触发器时,可以指定过去的一个开始时间,以便运行所有过去的重复周期。
- 将每个重复周期延迟特定时间,然后再运行。
有关计划内置触发器和操作的详细信息,包括此触发器和重复周期触发器之间的差异,以及计划定期工作流的方法,请参阅 Azure 逻辑应用工作流中重复性触发器的计划。
Prerequisites
Azure 帐户和订阅。 如果没有订阅,可以注册免费的 Azure 帐户。
具有空白工作流的逻辑应用资源。
如果没有此资源,请参阅以下文章:
添加“滑动窗口”触发器
在 Azure 门户中,打开逻辑应用资源,这需要空白工作流,以便可以添加触发器。
根据使用的是“消耗”还是“标准”逻辑应用,按相应步骤操作:
消耗
在资源边栏上的“开发工具”下,选择设计器以打开工作流。
在设计器上,选择“添加触发器”。
标准
在资源边栏的“工作流”下,选择“工作流”。
在“工作流”页上,选择空白工作流。
在工作流边栏上的 “工具”下,选择设计器以打开工作流。
在设计器上,选择“添加触发器”。
按照常规步骤将名为“滑动窗口”的计划触发器添加到工作流。
在“你想多久检查一次项?”部分中,输入重复周期的间隔和频率。 对于此示例,请将这些参数设置为每周运行工作流。
参数 JSON 名称 必选 类型 说明 间隔 interval是 Integer 一个整数,描述工作流基于频率运行的频繁度。 下面是最小和最大间隔:
- 月:1-16 个月
- 周:1-71 周
- 天:1-500 天
- 小时:1-12,000 小时
- 分钟:1-72,000 分钟
- 秒:1-9,999,999 秒
例如,如果间隔为 6,频率为“月”,则重复周期为每 6 个月。频率 frequency是 字符串 定期计划的时间单位:“秒”、“分钟”、“小时”、“天”、“周”或“月” 在“高级参数”旁边,选择“全部显示”以查看可用参数。
除了“间隔”和“频率”,此触发器还具有以下选项:
参数 必选 JSON 名称 类型 说明 延迟 否 delay字符串 根据 ISO 8601 日期时间规范延迟每个重复周期的时间 时区 否 timeZone字符串 仅当指定启动时间时才适用,因为此触发器不接受 UTC 时差。 选择要应用的时区。 开始时间 否 startTime字符串 采用以下格式提供开始日期和时间:
如果选择了时区,则格式为 YYYY-MM-DDThh:mm:ss
-或-
如果未选择时区,则格式为 YYYY-MM-DDThh:mm:ssZ
例如,如果希望 2025 年 9 月 18 日下午 2:00,请指定“2025-09-18T14:00:00”,然后选择时区(如太平洋标准时间)。 或者指定“2025-09-18T14:00:00Z”且不选择时区。
注意:此开始时间必须遵循 UTC 日期时间格式中的 ISO 8601 日期时间规范,但没有 UTC 时差。 如果未选择时区,请在末尾添加字母“Z”(无空格)。 这个“Z”指等效的航海时间。
对于简单计划,开始时间是第一次发生;对于高级重复周期,触发器的激发时间不会早于开始时间。 请参阅可通过哪些方式使用开始日期和时间?现在,请使用其他操作生成剩余的工作流。
查看工作流定义 - 滑动窗口
逻辑应用的基础工作流定义使用 JSON。 要查看设置了值的滑动窗口触发器定义,请在设计器工具栏上选择“代码视图”。 要返回到设计器,请在代码视图工具栏上选择“设计器”。
此示例显示如果延迟为每小时重复周期 5 秒,滑动窗口触发器定义在基础工作流定义中的外观如何:
"triggers": {
"Recurrence": {
"type": "SlidingWindow",
"Sliding_Window": {
"inputs": {
"delay": "PT5S"
},
"recurrence": {
"frequency": "Hour",
"interval": 1,
"startTime": "2019-05-13T14:00:00Z",
"timeZone": "Pacific Standard Time"
}
}
}
}