Skip to main content

Configuration of priint:bpm (Camunda)

1. Configuring Application Properties

You can override any bundled properties by placing a file named application.yml next to the jar. It will be read in at startup (assuming you run it using the provided command, see installation instructions) and all properties within it will take precedence over the ones bundled with the app.

2. Port

The default port for Camunda is 8888. Change it to for example 8889 with this setting in application.yml

server:
port: 8889

3. Database

Properties for different DBMS engines can be used by specifying appropriate spring profiles. Default credentials can be found in our access-restricted documentation for partners. We recommend setting your own secure passwords.

MySQL and its connection configuration is used by default, other available DB-related profiles that need to be explicitly activated are: oracle, sqlserver.

If you are using MySQL, add only the datasource config to your application.yml.

spring:
datasource:
url: jdbc:mysql://localhost:43306/priint_bpm?serverTimezone=Europe/Berlin&sessionVariables=transaction_isolation='READ-COMMITTED'
username: <check default credentials>
password: <check default credentials>

If required values are different, add the properties you wish to change to your application.yml.

In all cases "username" is the database name of the priint bpm / camunda database created by the installer. Use the password of the database user (not db admin user!) configured during the publishing server installation.

You only need to adjust these defaults if your database is not on localhost, or any other setting must be changed, add them to application.yml

4. Publishing Server Connection

The connection to the publishing server is controlled by the following settings:

planner.engine:
url: http://localhost:40080/PlannerEngine/api/
# The user added here needs to be assigned to or have access to projects this priint-bpm will process. Make sure you either
# explicitly configure this account to take part in projects or grant it a role that enables it to access any project.
user: admin
password: yourPlannerEnginePassword

If your installation uses different settings, please add them to application.yml.

Detailed description of the properties' mechanism used can be found here.

5. History

Most of our default processes are using the history provided by Camunda to provide an execution history and for displaying the outcome. The default settings are AUDIT and the logs are kept for 7 days. For more information on the history configuration consult the official documentation.

We don't recommend changing the defaults, so please only overwrite these values in your application.yml if you know what you're doing.

camunda.bpm:
history-level: AUDIT

If you run into problems in the applications, for example missing process instances in priint:planner or missing notifications, check that the history level is set to at least AUDIT.

6. Logging

You can configure logback to output logs as desired. When defining your own application.yml, just define a pointer to logback config file like this:

logging:
config: your-logback-file.xml

Then create your-logback-file.xml next to your jar and application.yml. Example configuration you might use as a start:

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
<include resource="org/springframework/boot/logging/logback/console-appender.xml" />
<root level="INFO">
<appender-ref ref="CONSOLE"/>
</root>
<logger name="com.priint" level="INFO"/>
</configuration>

7. Health checks and metrics

Health and separate readiness and liveness endpoints can be activated by adding the following lines to application.yml:

management:
endpoint:
health:
show-details: ALWAYS
probes:
enabled: true
health:
livenessstate:
enabled: true
readinessstate:
enabled: true
endpoints:
web.exposure.include: health

Following endpoints will become accessible by HTTP GET at runtime:

  • http://your-host:your-port/actuator/health
  • http://your-host:your-port/actuator/health/readiness
  • http://your-host:your-port/actuator/health/liveness

To enable metrics in prometheus format add prometheus to the list of exposed endpoints and enable metrics collection.

management:
endpoints:
web.exposure.include: ..., prometheus

camunda.bpm:
metrics:
enabled: true
db-reporter-activate: true

Following endpoint will become accessible by HTTP GET at runtime:

  • http://your-host:your-port/actuator/prometheus

8. Camunda configuration

The admin user creation wizard is shown on the first start of the priint:bpm application. You can find more about this initial setup and how to reset the admin user password here.

Alternatively it is possible to configure priint:bpm / Camunda in such a way that the admin user is created automatically on the first start of the application. To configure this add the following lines to your "application.yaml" and change the values. This is however optional.

camunda.bpm:
admin-user:
id: "admin"
password: "changeme"
email: "dev@priint.com"
first-name: "Camunda"
last-name: "Admin"