Page History
Table of Contents |
---|
Description
The Trace Timeline Event Publisher component is introduced to publish all trace timeline events on a queue for other software to be able to consume those messages in some way. Trace events messages can typically be used for process miningIt was introduced in Blueriq 14.8.
Note that when using this component, the consuming application of the timeline events is responsible for persisting these events and if the timeline data needs to be disclosed to the end user, a custom container type should be added to Blueriq.
Requirements
The trace timeline event publisher component needs to be able to access a queue. Currently, only RabbitMQ is supported. For setting this up see Configuration of RabbitMQ for Customerdata service and Trace Event Publisher.
Installation
In order to use this component, the trace timeline-event-publisher-amqp
profile must be active. More information on how to configure the application using Spring Profiles can be found here: Component configuration with Spring Profiles.
The tracetimeline-event-publisher-amqp
profile activates trace timeline events being published to the configured RabbitMQ channel. If, besides that, you want trace events to be also stored in a database you need to activate the trace-sql-store
profile and externaldatasources
profile as well. Please consult the relevant documentation on how to configure the trace-sql-store component and the externaldatasources.exchange. When timeline events are published to RabbitMQ, they will no longer be written to the database.
Configuration
To be able to publish event messages, the event channel needs to be configured in application-tracetimeline-event-publisher-amqp.properties
This file can be found, or otherwise should be placed in <Blueriq installation folder>\Runtime\conf
.
The queue configuration can be configured using a default queue (using blueriq.default.rabbitmq.* in the application-trace.properties). When it is needed, it can be overruled using the configuration below.
Also the timeline events exchange has a default, and can be overruled by configuration when needed.
Code Block | ||||
---|---|---|---|---|
| ||||
# RabbitMQ configuration |
...
blueriq. |
...
timeline.event.publisher. |
...
amqp.rabbitmq.host = localhost |
...
blueriq. |
...
timeline.event.publisher. |
...
amqp.rabbitmq.port = |
...
5671 blueriq. |
...
timeline.event.publisher |
...
.amqp.rabbitmq.virtualHost = / |
...
blueriq. |
...
timeline.event.publisher. |
...
amqp.rabbitmq.username = guest |
...
blueriq. |
...
timeline.event.publisher. |
...
amqp.rabbitmq.password = guest |
...
blueriq. |
...
timeline.event.publisher. |
...
amqp.rabbitmq.ssl.enabled = true |
...
...
# |
...
Timeline events channel configuration |
...
blueriq. |
...
timeline.event.publisher |
...
.amqp.rabbitmq.exchangeName = |
...
timelineEvents
|
Enable TLS connection
To enable a secure (TLS) AMQP connection to the queue, set the property "blueriq.tracetimeline.event.publisher.channel.amqp.rabbitmq.ssl
.enabled
" to "true
".
The default for AQMP port with TLS on RabbitMQ is '5671', it needs to be explicitly enabled though, see https://www.rabbitmq.com/ssl.html for more information.
...