I wanted to share a solution I recently developed to simplify Observability with the Dell Boomi AtomSphere Platform. Boomi APM Connector allows:
- Distributed Tracing
- Trigger of Events
- Creation of Custom Metrics
The Boomi APM Connector will enable Boomi Runtime for Observability:
Taking the following Components topology:
Connection Actions | Operation | Traces | Events | Metrics |
---|---|---|---|---|
Execute | APM Start | Start | N/A | N/A |
Execute | APM Save/Continue | Continue | N/A | N/A |
Execute | APM Stop | End | Yes | N/A |
Execute | APM Error | Start | Yes | N/A |
Update | Publish Metrics | N/A | N/A | Yes |
Platform Name | Trace | Events | Metrics |
---|---|---|---|
AppDynamics | ✅ | ✅ | ✅ |
AWS X-Ray Otel | ✅ | No | No |
Datadog | ✅ | ✅ | ✅ |
Dynatrace | ✅ | No | ✅ |
ElasticAPM | ✅ | No | No |
HoneyComb | ✅ | No | No |
NewRelic | ✅ | No | No |
Manage Engine | ✅ - | No | No |
OpenTelemetry | ✅ | No | ✅ |
OpenTracing | ✅ | No | No |
OpenTracing Resolver | ✅ | No | No |
VMWare Wavefront | ✅ | No | No |
-: Tracing on a Process (not distributed)
*No: Not implemented yet or Not available
Please download the library connector-archive and the connector descriptor connector-descriptor.
Depending on the Observability Stack used, installation of one of multiple Agents will be required.
Please go to Setup>Account>Publisher and fill out the information.
And then, go to Setup>Development Resources>Developer and create a new Group. The two files to upload are the files you previous downloaded. For the Vendor Product Version, please mentioned the version of the Zip Archive.
Will will instrument the following Boomi Process:
First, we have to configure the APM Connector:
Then, we will create three operations:
The first one with a "Start Trace" Action
The second one with a "Stop Trace' Action and the "Send Event" enabled
A third one with a "Error' Action and the "Send Event" enabled
Then, we are the three shapes to the process:
- The APM Start shape at the beginning
- (Optional) The APM Save/Continue shape in a sub-process (will add the current process name) or in the main process to add tags
- The APM Stop shape before the last End, please note that we created a branch here as the Disk shape (Get) might not returned a Document thus an APM Stop shape after the Disk might not be called
- The APM Error in the try catch
Please note that the operations created previously don't need to be created for another Process to instrument
That's it! You can deploy the process and see Traces and Events.
You can add custom tags to the trace using the "Set Property" shape with APM Document:
For instance you can add atomId and atomName:
In your original Process, if you were using the "Document Property - Base - Try/Catch Message" value in a Shape (Throw, Notify, etc), you can use the "Document Property - APM - Try/Catch Message" to get the same error message.
So in your example,
will become:
More details of the configuration of AppDynamics here here
The following Metrics are supported for AppDynamics:
- average
- sum
- observed
The following Metrics type are supported for Datadog:
- count
- rate
- gauge
- distribution
More details of the configuration of Datadog here here
More details of the configuration of Elastic APM here here
More details of the configuration of New Relic One here here
More details of the configuration of Grafana Cloud here here