Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.activeviam.com/llms.txt

Use this file to discover all available pages before exploring further.

The application.yml file configures the workflow database settings, including initial load, schema, conflicts, and domains. Location: limits-starter\src\main\resources.

File values

PropertyValueDescription
server.port3090Port used by the limits server application.
schema.printertrue
management.endpoints.web.exposure.include“*”List of the Spring Boot Actuator endpoint exposed in the application.
server.servlet.session.cookie.nameLIM_JSESSIONIDThe cookie name. You can set a unique cookie name here when connecting multiple accelerators.
max-agePT12HThe maximum expiration time. Must match the value defined in qfs.expiration

Section: Atoti Limits connecting to other solution

The following properties can be set in the application.yml file. The main way of setting these properties is connecting Atoti Limits to a server, such as FRTB, using the auto-configuration. Before connecting to a server or configuring these properties, they will be null during the execution of Atoti Limits until a connection is made. In addition, if the maps already contain entries at startup, those values will be used by Atoti Limits. If the content server properties are set, they won’t be changed when connecting to a new server.
PropertyValueDescription
limits.connected-server.url.map`{‘MRA’: ‘http://localhost:10010/risk-activepivot/activeviam/pivot/rest/v8/cube’, ‘FRTB’: ‘http://localhost:8080/frtb-starter/activeviam/pivot/rest/v8/cube’}Map of the Solution name to http url
limits.connected-server.version.mapMap of the Solution name to its server version: { < server name >: < version >, … }
Example: { ‘FRTB’: ‘6.0.0’ }

Auto-configured, null by default.

limits.connected-server.kpi-path.map{‘FRTB’: ‘properties/property-files/kpis’}Atoti Server configuration kpi path to get the kpi permissions which are used during startup to delete the stale kpis. The path might be different from AP release to release. Different servers might be run on the different AP versions.
limits.connected-server.auth.map{‘MRA’: ‘YWRtaW46YWRtaW4=’, ‘FRTB’: ‘YWRtaW46YWRtaW4=‘}Map of the Solution name to authentication token
limits.connected-server.as-of-date.map{‘MRA’: ‘AsOfDate@Date@Dates’, ‘FRTB’: ‘AsOfDate@Date@Dates’}Map of the Solution name to AsOfDate cube location
limits.content.server.urlhttp://localhost:8080/frtb-starter/activeviam/content/rest/v7URL of the content server to be used with Limits (and Limit’s UI). It is usually exposed at the server’s /content endpoint.
limits.content.server.name< server name > e.g. FRTBThe name of the content server to which Limits is connecting.
limits.content.server.authYWRtaW46YWRtaW4=The Base64 Encoded Authentication to use to authenticate requests to the Content Server. The Authentication should be for admin access and the passcode should be in the format USER_NAME:PASSWORD . For example, we would generate the Authentication for a user “admin” with password “admin” as the string “admin:admin” which would get encoded to “YWRtaW46YW1kaW4=”.
limits.connected-server.level-path.map{‘FRTB’: ‘http://localhost:8080/frtb-starter/services/rest/v1/levelPath/’&#125;Map of the Solution name to Level Path REST endpoint URL

Section: JWT configuration

This section configures the JWT parameters used for authentication
PropertyValueDescription
activeviam.qfs.jwt.key.publicThe RSA key public key encoded in Base64, used to verify the integrity of the tokens.
activeviam.qfs.jwt.key.privateThe RSA key private key encoded in Base64, used to sign the tokens.
activeviam.qfs.expiration43200The lifetime of the tokens in seconds.

Section: Activiti History

This section configures the use of the Activiti History. See Activity user guide for details about the Activiti History: https://www.activiti.org/userguide/
PropertyValueDescription
spring.activiti.dbHistoryUsedtrueFlag used to enable/disable the Activiti History
spring.activiti.historyLevelfullActivity History level

Section: Limits Application Datasource

Properties in this section are related to JPA sources for the limit structures, limits and incidents in Atoti Limits
Property NameValueDescription
limits.application.datasource.urljdbc:h2:mem:limits-application;DB_CLOSE_DELAY=-1;Connection url
limits.application.datasource.usernameappConnection username
limits.application.datasource.passwordPassword to authenticate the user
limits.application.datasource.properties.hibernate.dialectorg.hibernate.dialect.H2DialectHibernate dialect
limits.application.datasource.properties.hibernate.format_sqlfalseEnables formatting of SQL logged to the console.
limits.application.datasource.properties.hibernate.hbm2ddl.autoupdateSetting for how Spring should handle the database table on startup. Potential values include: create, create_drop, none, validate, update, drop, validate and truncate.
limits.application.datasource.properties.hibernate.globally_quoted_identifierstrueEscapes all database identifiers, so we don’t have to put column and table names in quotations.
limits.application.datasource.hikari.connectionTimeout30000Maximum timeout in milliseconds user will wait for a connection from connection pool.
limits.application.datasource.hikari.idleTimeout60000Maximum time a connection can remain idle in connection pool.
limits.application.datasource.hikari.minimumIdle1Minimum number of idle connections in a connection pool.
limits.application.datasource.hikari.maximumPoolSize10Maximum size of the connection pool, including both idle and in-use connections.
limits.application.datasource.hikari.poolNamelimits-applicationName of the connection pool.

Section: Activiti database

This section configures the Activiti database and the connection to the Activiti database.
PropertyValueDescription
activiti.datasource.urljdbc:h2:mem:limits-application;DB_CLOSE_DELAY=-1;URL of the Hibernate connection to the Activiti database.
activiti.datasource.usernameappUser name used for the Hibernate connection to the Activiti database.
activiti.datasource.passwordPassword used for the Hibernate connection to the Activiti database
activiti.datasource.properties.hibernate.dialectorg.hibernate.dialect.H2DialectSQL dialect used for the Hibernate connection to the Activiti database.
activiti.datasource.properties.hibernate.format_sqltrueFlag used to set up the formatting of the SQL queries in the Hibernate logs
activiti.datasource.properties.hibernate.hbm2ddl.autoupdateHibernate DDL generation setup to run on startup against the Activiti database. NOTE: Remove this line once the table is created.
activiti.datasource.properties.hibernate.globally_quoted_identifierstrueIf true then Hibernate will escape reserved SQL keywords when generating SQL for Activiti audit-log database
activiti.datasource.hikari.connectionTimeout30000Maximum time (in milliseconds) that a client will wait for a connection from the pool (connection to the Activiti database).
activiti.datasource.hikari.idleTimeout60000Maximum time (in milliseconds) that a connection is allowed to sit idle in the pool (connection to the Activiti database).
activiti.datasource.hikari.minimumIdle1Minimum number of idle connections that HikariCP tries to maintain in the pool (connection to the Activiti database).
activiti.datasource.hikari.maximumPoolSize10Maximum size that the pool is allowed to reach, including both idle and in-use connections (connection to the Activiti database).
activiti.datasource.hikari.poolName“activiti”User-defined name for the connection pool. Displayed mainly in logging and JMX management consoles to identify pools

Section: Activiti Mail Server Configuration

PropertyValueDescription
limits.activiti.mail.hostsmtp.gmail.comURL of the mail server
limits.activiti.mail.port465Port of the mail server
limits.activiti.mail.usernameusername to use for authentication to the mail server
limits.activiti.mail.passwordpassword to use for authentication to the mail server
limits.activiti.mail.ssltrueUse SSL when connecting to the mail server
limits.activiti.mail.tlstrueUse TLS when connection to the mail server
limits.activiti.mail.breach-urlhttp://localhost:3000/#/dashboard/d46The URL where the raw binary data can be fetched from

Section: Audit Log Database

This section configures the Activiti database and the connection to the Audit Log database.
PropertyValueDescription
audit-log.datasource.urljdbc:h2:mem:limits-application;DB_CLOSE_DELAY=-1;URL of the Hibernate connection to the Audit Log database.
audit-log.datasource.usernameappUser name used for the Hibernate connection to the Audit Log database.
audit-log.datasource.passwordPassword used for the Hibernate connection to the Audit Log database.
audit-log.datasource.properties.hibernate.dialectorg.hibernate.dialect.H2DialectSQL dialect used for the Hibernate connection to the Audit Log database.
audit-log.datasource.properties.hibernate.format_sqltrueFlag used to set up the formatting of the SQL queries in the Hibernate logs
audit-log.datasource.properties.hibernate.hbm2ddl.autoupdateHibernate DDL generation setup to run on startup against the Audit Log database. NOTE: Remove this line once the table is created.
audit-log.datasource.properties.hibernate.globally_quoted_identifierstrueIf true then Hibernate will escape reserved SQL keywords when generating SQL for the Audit Log database
audit-log.datasource.hikari.connectionTimeout30000Maximum time (in milliseconds) that a client will wait for a connection from the pool (connection to the Audit Log database).
audit-log.datasource.hikari.idleTimeout60000Maximum time (in milliseconds) that a connection is allowed to sit idle in the pool (connection to the Audit Log database).
audit-log.datasource.hikari.minimumIdle1Minimum number of idle connections that HikariCP tries to maintain in the pool (connection to the Audit Log database).
audit-log.datasource.hikari.maximumPoolSize10Maximum size that the pool is allowed to reach, including both idle and in-use connections (connection to the Audit Log database).
audit-log.datasource.hikari.poolName“audit-log”User-defined name for the connection pool. Displayed mainly in logging and JMX management consoles to identify pools

Section: Limit workflow

This section defines properties relating to the workflows.
PropertyValueDescription
limits.workflow.limit-workflows.StraightThrough.keylimit-process-instance.straight-throughMaps the ‘StraightThrough’ workflow type used for the creation of limit tasks to the ‘limit-process-instance.straight-through’ workflow.
limits.workflow.limit-workflows.FourEyes.keylimit-process-instance.four-eyesMaps the ‘four-eyes’ workflow type used for the creation of approval tasks to the ‘limit-process-instance.four-eyes’ workflow.
limits.workflow.limit-workflows.SixEyes.keylimit-process-instance.six-eyesMaps the ‘six-eyes-kpi’ workflow type used for the creation of limit tasks to the ‘limit-process-instance.six-eyes-kpi’ workflow. This property is required for Limits to start. You can use the reference limit-process-instance.straight-through provided in limits-starter/src/main/resources/processes/ as a default implementation.
limits.workflow.exception-workflows.Exception.keylimit-process-instance.exceptionMaps the ‘exception’ workflow type used for breaches/warnings to the ‘limit-process-instance.exception’ workflow.
limits.workflow.limit-workflows.FourEyes.participantsApproversList of types of users that can move a limit along a FourEyes workflow.
limits.workflow.limit-workflows.SixEyes.participantsExaminers,ApproversList of types of users that can move a limit along a SixEyes workflow.
limits.workflow.rolesROLES_USERS,ROLE_MANAGERSList of security roles which can move a limit along any workflow.
limits.workflow.workflow-rules.can-approver-be-same-as-creatorfalseIf true, the creator of a limit may also approve it.

Section: Swagger

PropertyValueDescription
springdoc.swagger-ui.enabledfalseEnable/disable the Swagger UI. See Swagger

Section: Incidents

PropertyValueDescription
limits.incident.evaluation.include-passesfalseIf true, Atoti Limits stores passes (i.e. evaluations that do not result in a breach or warning) in the datastore during limit evaluation. The default value of false prevents a large number of passes from polluting the Limit Status screen.
limits.incident.evaluation.parallel-tasks10Number of threads to use when evaluating limits on-demand.
limits.incident.evaluation.error.include-stacktracefalsetrue if the stack trace should be available in the evaluation response to the UI.

Section: CSV Topic Configuration

PropertyValueDescription
limits.topic.csv.skipped-lines1The number of skipped lines.
limits.topic.csv.incomplete-linesfalseSpecifies whether incomplete CSV lines are accepted.
limits.topic.csv.overflow-linesfalseSpecifies whether overflowing CSV lines are accepted.
limits.topic.csv.column-separator,Parser column separator.
limits.topic.csv.process-quotestrueIf true, the parser will parse values in double quotes. Otherwise, quotes are treated as literals.

Section: AlertTask

PropertyValueDescription
limits.task-scheduler.thread-pool-size4Thread pool size for task scheduler
limits.alert-task.sample-rate-cron0 */5 * * * * Cron expression for Intraday Alert task’s cron job. Default is to run the evaluation every 5 minutes. An example cron expression tool: click here. Note that cron expressions are evaluated differently in Jav compared to Linux. See this explanation by Baeldung. We require the Spring cron syntax i.e. 6 space-separated fields.

Section: Workflow Datasource

Properties in this section are related to JPA sources for the workflows in Atoti Limits
Property NameValueDescription
application.datasource.urljdbc:h2:mem:limits-application;DB_CLOSE_DELAY=-1;Connection url
application.datasource.usernameappConnection username
application.datasource.passwordPassword to authenticate the user
application.datasource.properties.hibernate.dialectorg.hibernate.dialect.H2DialectHibernate dialect
application.datasource.properties.hibernate.format_sqlfalseEnables formatting of SQL logged to the console.
application.datasource.properties.hibernate.hbm2ddl.autoupdateSetting for how Spring should handle the database table on startup. Potential values include: create, create_drop, none, validate, update, drop, validate and truncate.
application.datasource.properties.hibernate.globally_quoted_identifierstrueEscapes all database identifiers, so we don’t have to put column and table names in quotations.
application.datasource.hikari.connectionTimeout30000Maximum timeout in milliseconds user will wait for a connection from connection pool.
application.datasource.hikari.idleTimeout60000Maximum time a connection can remain idle in connection pool.
application.datasource.hikari.minimumIdle1Minimum number of idle connections in a connection pool.
application.datasource.hikari.maximumPoolSize10Maximum size of the connection pool, including both idle and in-use connections.
application.datasource.hikari.poolNameapplication-process-instanceName of the connection pool.

Section: Limits Initial Load Configuration

PropertyValueDescription
limits.initial-load.root-dir./src/main/resources/dataDirectory path to the data files.
limits.initial-load.file-path-matchers.as-of-dateglob:**/*as_of_date*.csvRegular expression to match as_of_date.csv files.
limits.initial-load.file-path-matchers.limit-structuresglob:**/*limit_structures*.csvRegular expression to match limit_structures.csv files.
limits.initial-load.file-path-matchers.limitsglob:**/*limits_approve*.csvRegular expression to match limits_approve.csv files.
limits.initial-load.file-path-matchers.incidentsglob:**/incident/**/*incident*.csvRegular expression to match incident.csv files.

Section: Other

PropertyValueDescription
limits.discovery-manager.polling-delay30000Milliseconds that the connected cube description is valid for before needing to be refreshed. If the cube is expected to change frequently then this should be decreased.
limits.scope.force-unambiguous-level-pathsfalseBoolean flag to enable if we want to force Scopes to be Unambiguous on Multi-Level Hierarchies. Please see limits.scope.force-unambiguous-level-paths for more.
limits.scope.autofill-unambiguous-level-pathstrueBoolean flag to enable if we want to autofill Scopes to its Unambiguous Multi-Level values. Please see limits.scope.autofill-unambiguous-level-paths for more.
limits.scope.is-using-explicit-matchingtrueFlag to enable explicit scope matching. If true then a Limit will only be visible in the business cube at the exact location the Limit’s Scope is defined on and no lower. This does not affect the location evaluations and breaches are checked at.

Section: Spring

PropertyValueDescription
spring.application.nameAtoti LimitsRegisters the name of the application with Spring. This is used in the notification service to identify the source server for each notification.
spring.h2.console.enabledfalseTrue if the H2 console is available. This is useful for investigating JDBC connections.
spring.data.rest.base-pathlimits/rest/v2/spring/jpaThe base URL for Spring Data REST services which are autoconfigured for JPA repositories.
spring.liquibase.enabledfalseTrue if Liquibase database schema migrations listed in limits-starter/src/main/resources/liquibase/master-changelog.yaml should be applied on startup.
spring.liquibase.change-logclasspath:/liquibase/master-changelog.yamlThe location of the changelog file if Liquibase database schema migrations are applied on startup.