BPEL summary event formats

Summary events for BPEL processes, activities, and human tasks are JSON objects that result from the aggregation of the corresponding time series.

IBM® Business Automation Insights handles the following kinds of BPEL summaries.
  • Process summaries result from the aggregation of process time series. BPEL process summaries convey information at the level of a process to identify the instance of the process, its state, and the business data.
  • Activity summaries result from the aggregation of activity time series. BPEL activity summaries convey information at the level of an activity to identify the activity execution, the activity state, and the business data that is handled at activity level.
  • Task summaries result from the aggregation of task time series. BPEL task summaries convey information at the level of a task to identify the task instance, its state, and the business data.
Important:

Defining a high number of fields in an OpenSearch index might lead to a so-called mappings explosion which might cause out-of-memory errors and difficult situations to recover from. The maximum number of fields in OpenSearch indices created by IBM Business Automation Insights is set to 1000. Field and object mappings, and field aliases, count towards this limit. Ensure that the various documents that are stored in OpenSearch indices do not lead to reaching this limit.

By design, IBM Business Automation Insights defines 73 field mappings in OpenSearch indexes that store BPEL summaries. The overall number of fields in an index grows as the business data of the process or task instance output grows. Each new piece of business data adds one new field. However, if the business data is a string (text and keyword field data types), two new fields are added. Ensure that the output from processes and tasks does not contain too much business data, so that the limit of 1000 fields per index is not exceeded,

BPEL process format

Table 1. BPEL process summary attributes
Attribute Description Optional or required Type
version The process summary version Required A string constant, in the V.R.M format
type The process summary type Required The string constant "bpel_process"
id The unique identifier of this process instance (raw: processInstanceId) Required String
state The state of the process, based on the latest aggregated event (raw: processInstanceExecutionState) Required String constant. Possible values: Active, Completed, Terminated, Failed, Suspended, Resumed, Migrated, Deleted (See the Note.)
timestamp The timestamp of the last aggregated event to produce this summary Required A string that contains an ISO8601 date in this format: yyyy-mm-ddThh:mm:ss.nnnZ
span-id The span identifier corresponding to the process Required String
parent-span-id The parent span identifier Optional String
trace-id The trace identifier Required String
bpmCellName The name of the IBM Business Automation Workflow emitter Required String
bpmSystemIdentifier The name of the IBM Business Automation Workflow system identifier Required String
processTemplateId The unique identifier of the process template Required String
processTemplateName The name of the process template Required String
processTemplateValidFrom The valid from time of the process template Required A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
startTime The time at which the process started (state: RUNNING) Required A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
processInstanceName The name of the process instance Optional - Present if the process name is different from the instance ID String
processInstanceDescription The description of the process instance Optional - Present if the process has a description String
suspendedTime The time at which the process was suspended (state: SUSPENDED) Optional - Present if the process was suspended A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
resumedTime The time at which the process resumed (state: RUNNING) Optional - Present if the process was resumed A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
completedTime The time at which the process completed (state: FINISHED) Optional - Present if the process was completed A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
restartedTime The time at which the process was restarted (state: RUNNING) Optional - Present if the process was restarted A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
deletedTime The time at which the process was deleted (state: DELETED) Optional - Present if the process was deleted A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
failedTime The time at which the process failed (state: FAILED) Optional - Present if the process has failed A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
compenstatedTime The time at which the process was compensated (state: COMPENSATED) Optional - Present if the process was compensated A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
compenstatedFailedTime The time at which the process compensation failed (state: COMPENSATION_FAILED) Optional - Present if the process compensation failed A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
terminatedTime The time at which the process was terminated (state: TERMINATED) Optional - Present if the process was terminated A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
migratedTime The time at which the last process was migrated Optional - Present if the process has been migrated at least once A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
duration The process duration, in milliseconds. Optional - Present if the difference between the startTime value and either the completedTime or terminatedTime or failedTime value can be computed. Number
data The process output data Optional - Present if output data is available JSON object

Example of a BPEL process summary

{
  "version": "1.0.0",
  "timestamp": "2019-05-09T05:48:16.219Z",
  "id": "_PI:9003016b.343b698.a2b78cf6.6ff40002",
  "bpmCellName": "TAPALLINONECell01",
  "bpmSystemId": "_PK:90230154.8567d7fb.20b78cf6.14030002",
  "trace-id": "44550b79-164b-4c53-bfb2-2b188a7f71f0",
  "span-id": "7458167704125c56",
  "type": "BPEL_PROCESS",
  "performerName": "admin",
  "processInstanceName": "adf",
  "processTemplateId": "_PT:9001016a.9aad3b2f.d7b78cf6.33b90016",
  "processTemplateName": "StartProc1",
  "processTemplateValidFrom": "Mon 2019-04-08 07:19:51.000",
  "state":"PROCESS_COMPLETED",
  "startTime": "2019-05-09T05:47:39.407Z",
  "completedTime": "2019-05-09T05:48:16.219Z",
  "duration":36812
}

BPEL activity summary format

Table 2. BPEL activity summary attributes
Attribute Description Optional or required Type
version The activity summary version Required A string constant, in the V.R.M format
type The activity summary type Required A string constant
id processInstanceId.activityTemplateId Required String
state The state of the activity, based on the latest aggregated event Required String. Possible values:
  • 1 - STATE_INACTIVE
  • 2 - STATE_READY
  • 3 - STATE_RUNNING
  • 4 - STATE_SKIPPED
  • 5 - STATE_FINISHED
  • 6 - STATE_FAILED
  • 7 - STATE_TERMINATED
  • 8 - STATE_CLAIMED
  • 11 - STATE_WAITING
  • 12 - STATE_EXPIRED
  • 13 - STATE_STOPPED
Possible values for scope activities:
  • 1 - STATE_READY
  • 2 - STATE_RUNNING
  • 3 - STATE_FINISHED
  • 4 - STATE_COMPENSATING
  • 5 - STATE_FAILED
  • 6 - STATE_TERMINATED
  • 7 - STATE_COMPENSATED
  • 8 - STATE_COMPENSATION_FAILED
  • 9 - STATE_FAILING
  • 10 - STATE_SKIPPED
  • 11 - STATE_COMPENSATION_FAILING
  • 12 - STATE_FAULTHANDLER_FAILING
  • 13 - STATE_FINISHING
  • 14 - STATE_STOPPED
timestamp The timestamp of the last aggregated event to produce this summary Required A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
span-id The span identifier corresponding to the activity Required String
parent-span-id The parent span identifier Optional String
trace-id The trace identifier Required String
bpmCellName The name of the IBM Business Automation Workflow cell that emits raw events Required String
bpmSystemIdentifier The name of the IBM Business Automation Workflow system identifier Required String
activityKind The kind of the activity Required String. Possible values:
  • 3 - KIND_EMPTY
  • 21 - KIND_INVOKE
  • 23 - KIND_RECEIVE
  • 24 - KIND_REPLY
  • 25 - KIND_THROW
  • 26 - KIND_TERMINATE
  • 27 - KIND_WAIT
  • 29 - KIND_COMPENSATE
  • 30 - KIND_SEQUENCE
  • 32 - KIND_SWITCH
  • 34 - KIND_WHILE
  • 36 - KIND_PICK
  • 38 - KIND_FLOW
  • 40 - KIND_SCOPE
  • 42 - KIND_SCRIPT
  • 43 - KIND_STAFF
  • 44 - KIND_ASSIGN
  • 45 - KIND_CUSTOM
  • 46 - KIND_RETHROW
  • 47 - KIND_FOR_EACH_SERIAL
  • 49 - KIND_FOR_EACH_PARALLEL
  • 52 - KIND_REPEAT_UNTIL
  • 1000 - SQLSnippet
  • 1001 - RetrieveSet
  • 1002 - InvokeInformationService
  • 1003 - AtomicSQLSnippetSequence
processTemplateName The name of the process template Required String
processTemplateValidFrom The valid from time of the process template Required A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
processTemplateId The unique identifier of the process template Required String
processInstanceId The unique identifier of the process instance Required String
activityInstanceId The unique identifier of the activity template Required String
principal The name of the user on whose behalf the action is being performed Required String
activityTemplateName The name of the activity template Optional String
activityTemplateDescription The description of the activity template Optional - Present if the instance has a description String
startTime The time at which the activity started (state: READY, RUNNING, WAITING) Required A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
skippedTime The time at which the activity was skipped (state: SKIPPED) Optional - Present if the activity was skipped A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
expiredTime The time at which the activity expired (state: EXPIRED) Optional - Present if the activity expired A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
failedTime The time at which the activity failed (state: FAILED) Optional - Present if the activity failed A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
assignedTime The time at which the activity was assigned (state: CLAIMED) Optional - Present if the activity was assigned A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
stoppedTime The time at which the activity was stopped (state: STOPPED) Optional - Present if the activity was stopped A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
completedTime The time at which the activity completed (state: FINISHED) Optional - Present is the activity was completed. A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
terminatedTime The time at which the activity was terminated (state: TERMINATED) Optional - Present if the activity was terminated A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
duration The activity duration in milliseconds. Optional. Present if the difference between startTime and completedTime or terminatedTime or failedTime can be computed. Number
data The activity output data Optional - Present if output data is available JSON object

Example of an activity summary

{
	"version": "1.0.0",
	"timestamp": "2019-05-29T11:04:58.430Z",
	"id": "_PI:9003016b.343b698.a2b78cf6.6ff40002._AT:9002016b.264d832.a2b78cf6.4daf0012",
	"bpmCellName": "TAPALLINONECell01",
	"bpmSystemId": "_PK:90230154.8567d7fb.20b78cf6.14030002",
	"trace-id": "dbce2f59-60da-4a0f-9657-9ed4b3faa7cd",
	"span-id": "319c16b516fb641b",
	"type": "BPEL_ACTIVITY",
	"principal": "admin",
	"processInstanceId": "_PI:9003016b.343b698.a2b78cf6.6ff40002",
	"processTemplateId": "_PT:9001016b.264d7fe.a2b78cf6.4daf0002",
	"processTemplateName": "StartProc1",
	"processTemplateValidFrom": "2019-04-08T07:19:51.000Z",
	"activityTemplateId": "_AT:9002016b.264d832.a2b78cf6.4daf0012",
	"activityTemplateName": "Receive",
	"activityKind": "23 - KIND_RECEIVE",
	"state": "ACTIVITY_COMPLETED",
	"startTime":"2019-05-29T11:04:58.429Z",
	"completedTime":"2019-05-29T11:04:58.430Z",
	"duration":1,
	"data": {
		"input1": "testdefault"
	}
}

BPEL human task summary format

Table 3. BPEL human task summary attributes
Attribute Description Optional or required Type
version The task summary version Required A string constant, in the V.R.M format
type The task summary type Required A string constant
id The unique identifier of the task instance Required String
state The state of the task, based on the latest aggregated event Required String. Possible values:
  • 1 - INACTIVE
  • 2 - READY
  • 3 - RUNNING
  • 5 - FINISHED
  • 6 - FAILED
  • 7 - TERMINATE
  • 8 - CLAIMED
  • 12 - EXPIRED
  • 101 - FORWARDED, DELETED.
timestamp The timestamp of the last aggregated event to produce this summary Required A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
span-id The span identifier corresponding to the task instance Required String
parent-span-id The parent span identifier Optional String
trace-id The trace identifier Required String
bpmCellName The name of the IBM Business Automation Workflow emitter Required String
bpmSystemIdentifier The name of the IBM Business Automation Workflow system identifier Required String
taskTemplateId The unique identifier of the task template Required String
taskTemplateName The name of the task template Required String
taskTemplateValidFrom The valid from time of the task template Required A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
kind The kind of the task instance Required Possible values:
  • 101 - KIND_HUMAN
  • 103 - KIND_ORIGINATING
  • 105 - KIND_PARTICIPATING
  • 106 - KIND_ADMINISTRATIVE
createdTime The time at which the task was created (state: INACTIVE) Required A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
taskInstanceName The name of the task instance Optional - Present if the instance has a name String
processTemplateId The unique identifier of the process template Optional - Present if the task belongs to an activity String
processInstanceId The unique identifier of the process instance Optional - Present if the task belongs to an activity String
performerName The name of the user associated with this event (raw: principal) Optional String
expirationDate The time at which the task will expire Optional - Present if the task has been started A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
isEscalated Indicates whether the task is escalated Optional Boolean
startTime The time at which the task started (state: READY or RUNNING) Optional - Present if the task was started A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
claimedTime The time at which the task was claimed (state: CLAIMED) Optional - Present if the task was claimed A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
completedTime The time at which the task completed (state: FINISHED) Optional - Present is the task was completed. A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
terminatedTime The time at which the task was terminated (state: TERMINATED) Optional - Present if the task was terminated A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
restartedTime The time at which the task was restarted (state: READY) Optional - Present if the task was restarted A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
deletedTime The time at which the task was deleted (state: DELETED) Optional - Present if the task was deleted A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
failedTime The time at which the task failed (state: FAILED) Optional - Present if the task failed A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
canceledTime The time at which the task was canceled (state: READY) Optional - Present if the task was canceled A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
expiredTime The time at which the task expired (state: EXPIRED) Optional - Present if the task expired A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
forwardedTime The time at which a follow-on task was started (state: FORWARDED) Optional - Present if the task was forwarded A string that contains an ISO8601 date in UTC (Coordinated Universal Time) format: yyyy-mm-ddThh:mm:ss.nnnZ
duration The task duration in milliseconds. Optional. Present if the difference between startTime and completedTime or terminatedTime or failedTime can be computed. Number
data The task output data Optional - Present if output data is available JSON object

Example of a BPEL task summary

{
	"version": "1.0.0",
	"type": "human_task",
	"id": "_TKI:a01b016b.1d288943.a2b78cf6.3d770444",
	"timestamp": "2019-06-03T11:45:24.340Z",
	"bpmCellName": "TAPALLINONECell01",
	"bpmSystemId": "_PK:90230166.5d160e3b.e6b78cf6.a3d80002",
	"trace-id": "be0de7a7-79a0-4eeb-8476-3caf5408a4a6",
	"span-id": "47d0c2e9f7c72e4c",
	"performerName": "admin",
	"taskInstanceName": "Review_Request",
	"taskTemplateId": "_TKT:a01a0166.5d172625.e6b78cf6.a3d80012",
	"taskTemplateName": "http://com.example.htm.predefined/Review_Request",
	"taskTemplateValidFrom": "2012-02-02T01:00:00.000Z",
	"state": "TASK_CLAIMED",
	"data": {
		"request.Review_Request": {
			"description.text": "done"
		}
	},
	"claimedTime": "2019-06-03T11:45:24.340Z",
	"createdTime": "2019-06-03T11:45:24.321Z",
	"startTime":"2019-06-03T11:45:24.331Z"
}