Skip to content

Commit

Permalink
Adding extension BAM
Browse files Browse the repository at this point in the history
Signed-off-by: Sebastian Döll <[email protected]>
  • Loading branch information
katallaxie committed Apr 18, 2024
1 parent 561c5e5 commit 43647e0
Show file tree
Hide file tree
Showing 4 changed files with 126 additions and 0 deletions.
1 change: 1 addition & 0 deletions cloudevents/extensions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ for more information.
## Known Extensions

- [Auth Context](authcontext.md)
- [BAM](bam.md)
- [Dataref (Claim Check Pattern)](dataref.md)
- [Distributed Tracing](distributed-tracing.md)
- [Expiry Time](expirytime.md)
Expand Down
117 changes: 117 additions & 0 deletions cloudevents/extensions/bam.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
# Business Activity Monitoring (BAM) Extension

Business Activity Monitoring (BAM) was originally coined by analysts at
Gartner, and refers to the aggregation, analysis, and presentation of
real-time information about activities inside organizations, customers,
and partners.

This extension defines attributes that can be included within a CloudEvent
to describe the business activity that the event is associated with.

Produces and consumers are free to define an out-of-band agreement on the
semantic meaning, or valid values, for the attribute.

## Notational Conventions

As with the main [CloudEvents specification](../spec.md), the key words "MUST",
"MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT",
"RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as
described in [RFC 2119](https://tools.ietf.org/html/rfc2119).

However, the scope of these key words is limited to when this extension is
used. For example, an attribute being marked as "REQUIRED" does not mean
it needs to be in all CloudEvents, rather it needs to be included only when
this extension is being used.

## Attributes

### businesstransactionid

- Type: `String`
- Description: A unique identifier for the transaction.
- Constraints
- REQUIRED
- MUST be a non-empty string
- RECOMMENDED as monotonically increasing and contiguous identifier
that is lexicographically-sortable.

### businessprocessid

- Type: `String`
- Description: A unique identifier for the business process
associated with the event.
- Constraints
- REQUIRED
- MUST be a non-empty string
- RECOMMENDED a alphanumeric string that contains non-whitespace characters
and only hyphens, underscores, and periods.

### businessprocesstransactionid

- Type: `String`
- Description: A unique identifier for the business process transaction
associated with the event.
- Constraints
- REQUIRED
- MUST be a non-empty string
- RECOMMENDED a alphanumeric string that contains non-whitespace characters
and only hyphens, underscores, and periods.

### businessprocesstransactionstepid

- Type: `String`
- Description: A unique identifier for the business process transaction step
associated with the event.
- Constraints
- REQUIRED
- MUST be a non-empty string
- RECOMMENDED a alphanumeric string that contains non-whitespace characters
and only hyphens, underscores, and periods.

### businessprocesstransactionstepstatus

- Type: `String`
- Description: The status of the business process transaction step
associated with the event.
- Constraints
- OPTIONAL
- if present, MUST be a non-empty string
- RECOMMENDED a alphanumeric string that contains non-whitespace characters
and only hyphens, underscores, and periods.

### businessprocesstransactioncompletion

- Type: `Boolean`
- Description: Indicates if the business process transaction associated
with the event has completed.
- Constraints
- OPTIONAL
- if present, MUST be a boolean value

## Usage

When this extension is used, producers MUST set the value of
the `businesstransactionid`, `businessprocessid`,
`businessprocesstransactionid`, and `businessprocesstransactionstepid`
attributes to the unique identifiers of the business process, transaction,
and transaction step associated with the event.

Intermediaries MUST NOT change the value of the `businesstransactionid`,
`businessprocessid`, `businessprocesstransactionid`,
and `businessprocesstransactionstepid` attributes.

## Use cases

This extension can be used in cases in which a business activity monitoring
system is used to monitor the progress of a business process, and the events
generated by the process are used to track the progress of the process.
Usually these systems have their own modelling language to describe the
business process, and the events generated by the process
are used to track the progress of the process.

## References

- [Gartner Business Activity Monitoring](https://www.gartner.com/en/information-technology/glossary/business-activity-monitoring-bam)
- [Business Activity Monitoring](https://en.wikipedia.org/wiki/Business_activity_monitoring)
- [What is Business Activity Monitoring (BAM)?](https://www.ibm.com/topics/business-activity-monitoring)
- [Business Activity Monitoring (BAM)](https://learn.microsoft.com/en-us/biztalk/core/business-activity-monitoring-bam)
2 changes: 2 additions & 0 deletions cloudevents/languages/he/extensions/bam.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Business Activity Monitoring (BAM) Extension
מסמך זה טרם תורגם. בבקשה תשתמשו [בגרסה האנגלית של המסמך](../../../extensions/bam.md) לבינתיים.
6 changes: 6 additions & 0 deletions cloudevents/languages/zh-CN/extensions/bam.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Business Activity Monitoring (BAM) Extension

本文档尚未被翻译,请先阅读英文[原版文档](../../../extensions/bam.md)

如果您迫切地需要此文档的中文翻译,请[提交一个issue](https://github.com/cloudevents/spec/issues)
我们会尽快安排专人进行翻译。

0 comments on commit 43647e0

Please sign in to comment.