流程执行简介

本文介绍关于工作流执行的基本内容,包括执行的基本概念、执行属性和执行历史事件。

基本概念

工作流执行是指对流程的一次具体运行。创建流程后,您可以多次执行流程,通常每次执行有不同的输入。

执行属性

下文列出了执行的属性,除了FlowName和Input是开始执行输入外,其他是执行的输出信息。

  • FlowName:执行的名称。在同一流程内唯一,可以为空,如果输入需符合如下约束。

    • 支持英文字符(a~z)或(A~Z)、数字(0~9)、下划线(_)和短划线(-)。

    • 首字母必须为英文字母(a~z)、(A~Z)或下划线(_)。

    • 区分大小写。

    • 长度为1~128个字符。

  • Input:执行的输入。若您自定义执行的输入,则必须是JSON对象格式。

  • Output:执行的输出必须是JSON对象格式。

  • FlowDefinition:流程定义。具体信息,请参见流程定义介绍。为确保流程更新不影响已经开始的执行,每个执行会保存其开始时对应的流程定义。

  • Status:执行的状态。包括Starting、Running、Stopped、Succeeded、Failed和TimedOut。

  • StartedTime:执行开始时间。

  • StoppedTime:执行结束时间。

执行历史事件

通常一个流程会包含多个步骤,在执行时,每个步骤的执行会产生一些事件。这些事件详细的记录了步骤的执行状态。您可以通过这些事件了解一个流程当前的执行步骤、输入、输出、流程执行持续时长和失败原因等信息。同时,云工作流服务利用这些状态数据跟踪流程执行,确保系统的高可用性。

您可以通过以下信息了解执行事件(Event)的属性,其中事件详情(EventDetail)是一个JSON对象格式的字符串,不同事件类型(Type)的事件详情内容可能会有所不同。

  • StepName:步骤名称。对应流程定义语言中的步骤名称。

  • Type:事件类型。云工作流执行过程中的事件类型依次为EnterEvent、ExecEvent和ExitEvent。关于事件中包含的状态(State)及状态流转情况,请参见流程定义介绍

  • EventDetail:事件详情。

  • Time:事件发生时间。

  • EventId:事件ID。

  • ScheduleEventId:触发当前事件的事件ID。