Configuration
Configuration
CIB ins7ght provides extensive configuration options to customize the application behavior, database connections, polling intervals, and more. This section explains all available configuration properties and their effects.
Configuration File Location
The main configuration files are located at:
src/main/resources/application.yaml- Default configurationsrc/main/resources/cib-ins7ght.yaml- Environment-specific overridesconfig/cib-ins7ght.yaml- External configuration (can be mounted in containers)
The application automatically imports configurations in this order:
application.yaml(base configuration)environment-config.yaml(optional)cib-ins7ght.yaml(optional, overrides previous values)
Core Configuration Properties
Server Configuration
Configure the HTTP server port and settings:
server:
port: 8899
Properties:
port: HTTP port for the application (default: 8899)
Database Configuration
CIB ins7ght supports both H2 and PostgreSQL databases.
H2 Database
spring:
datasource:
url: jdbc:h2:file:/ins7ght-h2-dbs/cib_ins7ght_db
username: sa
password: sa
driver-class-name: org.h2.Driver
jpa:
database-platform: org.hibernate.dialect.H2Dialect
hibernate:
ddl-auto: create
properties:
hibernate:
dialect: org.hibernate.dialect.H2Dialect
jdbc:
batch_size: 1000
batch_versioned_data: true
order_inserts: true
order_updates: true
PostgreSQL Database
spring:
datasource:
url: jdbc:postgresql://localhost:5432/cibseven-optimize
username: postgres
password: ${DB_PASSWORD}
driver-class-name: org.postgresql.Driver
jpa:
database-platform: org.hibernate.dialect.PostgreSQLDialect
hibernate:
ddl-auto: update
properties:
hibernate:
dialect: org.hibernate.dialect.PostgreSQLDialect
jdbc:
batch_size: 1000
batch_versioned_data: true
order_inserts: true
order_updates: true
Database Properties:
| Property | Description | Default/Example |
|---|---|---|
spring.datasource.url |
JDBC connection URL to the database | jdbc:postgresql://localhost:5432/cibseven-optimize |
spring.datasource.username |
Database username | postgres |
spring.datasource.password |
Database password (use environment variables for security) | ${DB_PASSWORD} |
spring.datasource.driver-class-name |
JDBC driver class name | org.postgresql.Driver or org.h2.Driver |
JPA/Hibernate Properties:
| Property | Description | Recommended Value |
|---|---|---|
spring.jpa.database-platform |
Database dialect for SQL generation | org.hibernate.dialect.PostgreSQLDialect or org.hibernate.dialect.H2Dialect |
spring.jpa.hibernate.ddl-auto |
Schema generation strategy: • create - Drop and recreate (H2/dev)• update - Update schema (PostgreSQL/prod)• validate - Only validate schema• none - No schema management |
create (dev)update (prod) |
hibernate.jdbc.batch_size |
Number of SQL statements to batch together for better performance | 1000 |
hibernate.jdbc.batch_versioned_data |
Enable batch updates for entities with version fields | true |
hibernate.order_inserts |
Order INSERT statements to allow batching | true |
hibernate.order_updates |
Order UPDATE statements to allow batching | true |
Polling Configuration
Control how CIB ins7ght polls data from CIB seven:
polling:
time: 10
engineRestUrl: http://localhost:8080/engine-rest
maxPageSizeDeployments: 500
maxPageSizeActivityInstances: 100000
maxPageSizeProcessInstances: 500
maxPageSizeIncidents: 500
batchIntervalInHours: 24
Polling Properties:
| Property | Description | Default/Recommended |
|---|---|---|
polling.time |
Polling interval in seconds (not milliseconds) | 10 seconds |
polling.engineRestUrl |
URL to CIB seven engine-rest API endpoint | http://localhost:8080/engine-rest |
polling.maxPageSizeDeployments |
Maximum number of process deployments to fetch per request | 500 |
polling.maxPageSizeActivityInstances |
Maximum number of activity instances to fetch per request | 100000 |
polling.maxPageSizeProcessInstances |
Maximum number of process instances to fetch per request | 500 |
polling.maxPageSizeIncidents |
Maximum number of incidents to fetch per request | 500 |
polling.batchIntervalInHours |
Interval for batch processing operations in hours | 24 |
Performance Tuning:
- Lower
timevalues provide more real-time data but increase server load - Increase
maxPageSize*values for systems with high process volumes - Adjust
batchIntervalInHoursbased on data volume and processing needs
Polling Authentication Configuration
CIB ins7ght supports three authentication methods for connecting to CIB seven:
Option 1: Basic Authentication
Direct authentication to the Camunda engine:
polling:
auth:
type: basic
basic:
username: demo
password: demo
Option 2: WebClient Authentication
Authentication via CIB Seven WebClient:
polling:
auth:
type: webclient
webclient:
url: http://localhost:8080/cib-seven-webclient/rest/login
username: admin
password: admin
Option 3: Single Sign-On (SSO)
OAuth2/OpenID Connect authentication:
polling:
auth:
type: sso
sso:
url: http://localhost:8088/auth/realms/cib/protocol/openid-connect/token
client-id: your-client-id
client-secret: ${SSO_CLIENT_SECRET}
useWebclient: true
webclientUrl: http://localhost:8080/cib-seven-webclient/rest/login
Authentication Properties:
| Property | Description | Values/Example |
|---|---|---|
polling.auth.type |
Authentication method to use for CIB seven connection | basic, webclient, or sso |
| Basic Authentication | ||
polling.auth.basic.username |
Username for direct Camunda engine authentication | demo |
polling.auth.basic.password |
Password for direct Camunda engine authentication | demo or ${ENGINE_PASSWORD} |
| WebClient Authentication | ||
polling.auth.webclient.url |
URL for CIB Seven WebClient login endpoint | http://localhost:8080/cib-seven-webclient/rest/login |
polling.auth.webclient.username |
Username for WebClient authentication | admin |
polling.auth.webclient.password |
Password for WebClient authentication | admin or ${WEBCLIENT_PASSWORD} |
| SSO Authentication | ||
polling.auth.sso.url |
OAuth2/OIDC token endpoint URL | http://localhost:8088/auth/realms/cib/protocol/openid-connect/token |
polling.auth.sso.client-id |
OAuth2 client identifier | Your client ID |
polling.auth.sso.client-secret |
OAuth2 client secret (use environment variables) | ${SSO_CLIENT_SECRET} |
polling.auth.sso.useWebclient |
Whether to use WebClient for authentication after SSO | true or false |
polling.auth.sso.webclientUrl |
WebClient URL when useWebclient is enabled | http://localhost:8080/cib-seven-webclient/rest/login |
Choosing an Authentication Method:
- Basic: Simplest option, direct access to Camunda engine
- WebClient: When using CIB Seven WebClient for centralized authentication
- SSO: Enterprise environments with OAuth2/OpenID Connect identity providers
WebClient Cockpit URL
Configure the URL to the CIB Seven webclient cockpit (used by the frontend):
webclientCockpitUrl: http://localhost:8080/webapp/#/seven/auth/processes/dashboard
Property:
| Property | Description | Example |
|---|---|---|
webclientCockpitUrl |
URL to CIB Seven webclient dashboard, used by frontend for navigation | http://localhost:8080/webapp/#/seven/auth/processes/dashboard |
Complete Configuration Example
Development Configuration (application.yaml)
server:
port: 8899
spring:
banner:
location: classpath:banner/cib-ins7ght-banner.txt
config:
import:
- optional:classpath:environment-config.yaml
- optional:classpath:cib-ins7ght.yaml
datasource:
url: jdbc:h2:file:/ins7ght-h2-dbs/cib_ins7ght_db
username: sa
password: sa
driver-class-name: org.h2.Driver
jpa:
database-platform: org.hibernate.dialect.H2Dialect
hibernate:
ddl-auto: create
properties:
hibernate:
dialect: org.hibernate.dialect.H2Dialect
jdbc:
batch_size: 1000
batch_versioned_data: true
order_inserts: true
order_updates: true
webclientCockpitUrl: http://localhost:8080/webapp/#/seven/auth/processes/dashboard
polling:
time: 10
engineRestUrl: http://localhost:8080/engine-rest
maxPageSizeDeployments: 500
maxPageSizeActivityInstances: 100000
maxPageSizeProcessInstances: 500
maxPageSizeIncidents: 500
batchIntervalInHours: 24
auth:
type: basic
basic:
username: demo
password: demo
webclient:
url: http://localhost:8080/cib-seven-webclient/rest/login
username: admin
password: admin
sso:
url: http://localhost:8088/auth/realms/cib/protocol/openid-connect/token
client-id: ''
client-secret: ''
useWebclient: true
webclientUrl: http://localhost:8080/cib-seven-webclient/rest/login
Production Configuration (cib-ins7ght.yaml)
server:
port: 8899
spring:
datasource:
url: jdbc:postgresql://your-postgres-host:5432/cibseven-optimize
username: postgres
password: ${DB_PASSWORD}
driver-class-name: org.postgresql.Driver
jpa:
database-platform: org.hibernate.dialect.PostgreSQLDialect
hibernate:
ddl-auto: update
properties:
hibernate:
dialect: org.hibernate.dialect.PostgreSQLDialect
jdbc:
batch_size: 1000
batch_versioned_data: true
order_inserts: true
order_updates: true
polling:
time: 10
engineRestUrl: https://your-cib-seven-host/engine-rest
maxPageSizeDeployments: 500
maxPageSizeActivityInstances: 100000
maxPageSizeProcessInstances: 500
maxPageSizeIncidents: 500
batchIntervalInHours: 12
auth:
type: basic
basic:
username: ${ENGINE_USERNAME}
password: ${ENGINE_PASSWORD}
Environment Variables
For sensitive information, use environment variables:
# Database credentials
export DB_PASSWORD=secure_db_password
# CIB Seven engine authentication
export ENGINE_USERNAME=your_username
export ENGINE_PASSWORD=your_password
# SSO configuration (if using SSO)
export SSO_CLIENT_SECRET=your_sso_client_secret
Troubleshooting Configuration
Database Connection Issues
Problem: Application fails to connect to database
Solutions:
- Verify database URL, username, and password
- Ensure database server is running and accessible
- Check firewall rules and network connectivity
- For PostgreSQL, ensure the database and schema exist
Polling Not Working
Problem: Data not being imported from CIB seven
Solutions:
- Verify
engineRestUrlis correct and accessible - Check authentication credentials are valid
- Ensure CIB seven history level is set to FULL or AUDIT
- Review application logs for polling errors
- Test engine-rest API manually:
curl http://your-engine-rest/engine
Performance Issues
Problem: Application is slow or using too much memory
Solutions:
- Reduce
maxPageSize*values if processing too much data - Increase
batchIntervalInHoursto reduce processing frequency - Increase
polling.timeinterval to reduce polling frequency - Adjust JVM memory settings
- Monitor database query performance
Monitoring Configuration
To verify your configuration is working:
- Check application startup logs for configuration values
- Access info endpoint (if configured):
GET /info/properties - Monitor polling logs for data import activity
- Check database connections and query performance
- Verify CIB seven connectivity via logs
Related Documentation
- Installation Guide - Installing and setting up CIB ins7ght
- Security Instructions - Security best practices
- Supported Environments - System requirements