The following table describes the ZooKeeper properties for the Customers (User) microservice:

S.NOPROPERTYDESCRIPTION
1hystrix.command.user-key.circuitBreaker.requestVolumeThresholdThis property sets the minimum number of requests in a rolling window that will trip the circuit.
2hystrix.command.user-key.circuitBreaker.sleepWindowInMillisecondsThis property sets the amount of time, after tripping the circuit, to reject requests before allowing attempts again to determine if the circuit should again be closed.
3hystrix.command.user-key.execution.isolation.thread.timeoutInMillisecondsThis property sets the amount of time, after tripping the circuit, to reject requests before allowing attempts again to determine if the circuit should again be closed.
4server.servlet.contextPathThis property holds the Spring Boot application's context path.
5server.ssl.enabledThis property controls the SSL configuration for the boot application.
6server.ssl.enabled-protocolsThis property holds the protocols enabled for this application, it can take comma separated values.
7server.ssl.key-aliasThis property holds the keystore alias name set during the import using keytool utility.
8server.ssl.key-storeThis property holds the keystore PrivateKeyEntry which will be used as the SSL certificate for the microservice.
9server.ssl.key-store-passwordThis property holds the keystore password for opening the keystore mentioned in key-store property.
10server.ssl.key-store-typeThis property holds the keystore type.
11server.tomcat.accesslog.directoryThis property holds the directory in which log files are created. It can be absolute or relative to the Tomcat's base directory.
12server.tomcat.accesslog.enabledThis property controls the Tomcat logs for the Boot application.
13server.tomcat.accesslog.max-daysThe maximum number of days rotated access logs will be retained for before being deleted. If not specified, the default value of 10
14server.tomcat.accesslog.patternThis property holds the pattern of the access logs to be printed. This will follow the Apache Tomcat parameters.
15skava.auditlog.db.driverClassNameThis property is used to connect to the mysql db for audit logs.
16skava.auditlog.db.enabledThis property is used to enable/disable the db for audit logs.
17skava.auditlog.db.passwordThis property is used to connect to the mysql db for audit logs.
18skava.auditlog.db.urlThis property is used to connect to the mysql db for audit logs.
19skava.auditlog.db.userNameThis property is used to connect to the mysql db for audit logs.
20skava.auditlog.enabledThis property set to enable/disable the auditlog component
21skava.auditlog.file-locationThis property set to enable/disable the auditlog component
22skava.auditlog.layout-typeThis property set to enable/disable the auditlog component
23skava.authorization.authExpiryTimeMinsThis property holds the expiry time of authorization token generated using the getTestToken API call. The value is mentioned in minutes.
24skava.authorization.authHeaderThis property holds the HTTP request header name in which the authorization token (JWT) is passed by the caller. Since the functionality of validating token is inherited from the framework, this property's value is used for identifying the correct header and its value is considered for access/authorization checks.
25skava.authorization.enabledThis property indicates whether the authorization component is enabled or disabled for the corresponding microservice. If the value is set as false, then all APIs are open to access without any authorization check and this is not recommended for the production or public APIs. For the production, production-like, or public environments, this property should be enabled (true).
26skava.authorization.gettesttoken.enabledThis property is used to enable the authorization endpoint for junit and readyapi testing
27skava.authorization.guestUserAuthExpiryTimeMinsnull
28skava.authorization.guestUserRoleNamenull
29skava.authorization.regUserRoleNamenull
30skava.authorization.superAdminRoleNameThe property indicates the Super Admin role name for the corresponding microservice.
31skava.authorization.tokenSecretThis property holds the secret which will be used to verify the signature of the JWT passed by the caller. Only if the JWT passed by the caller found valid with respect to signature, expiry and having necessary privileges, the request will be processed further.
32skava.bearerToken.expiryTimeMinsThis property is used to set the expiry time for bearer token in minutes
33skava.cache.cascadeCacheNamesThis property is used to enable cascade cache by its name.
34skava.cache.enableCascadeThis property is used to enable cascade cache.
35skava.cache.enabledThis property is used to enable cache.
36skava.cache.localCache.config.collection.cacheSizeThis property represents the local cache entry size.
37skava.cache.localCache.config.collection.maxIdleInSecondsThis property represents the local cache maximum idle time in seconds.
38skava.cache.localCache.config.collection.timeToLiveInSecondsThis property represents the local cache expiry time in seconds.
39skava.cache.localCache.typeThis property represents the local cache type for L1 cache used in cascade cache
40skava.cache.maxCacheSizeThis property holds the cache size in bytes. If the value is greater than 0, then the cache is restricted based on the value. Otherwise, no limitation for cache.
41skava.cache.redis.cacheNamesThis property holds the Redis cache names used by the application.
42skava.cache.redis.clearCacheEventNameThis property is used to set the event name for cache clear operation.
43skava.cache.redis.clientThis property represents the type of client for redis connection.
44skava.cache.redis.cluster.maxRedirectsThis property represents the maximum number of redirects to follow when executing commands across the cluster.
45skava.cache.redis.cluster.nodesThis property represents the comma-separated list of 'host:port' pairs to bootstrap from. This represents an 'initial' list of cluster nodes and is required to have at least one entry.
46skava.cache.redis.clusterEnabledThis property represents the toggle cluster for Redis server.
47skava.cache.redis.databaseThis property holds the Redis database index used by the connection factory.
48skava.cache.redis.enabledThis property indicates whether the Redis component needs to be enabled or disabled for this application. It is recommended that it should be enabled (true) for the production and production-grade environments (like performance).
49skava.cache.redis.expTimeToliveThis property holds the expiration time of Redis entries. That is the maximum time the objects are requested to be held in the Redis server. Using this property you are requesting Redis to hold the objects for the specified time but it is the LRU/LCU which will determine how long an entry survives in the cache.
50skava.cache.redis.hostThis property holds the Redis server's hostname/IP for caching objects.
51skava.cache.redis.maxTimeToliveThis property is used to set the max time to live in minutes time for redis cache.
52skava.cache.redis.passwordThis property holds the password for connecting to the Redis server. This is required if the authentication is enabled for the Redis server. It is recommended that it should be enabled for the production environment.
53skava.cache.redis.pool.maxActiveThis property holds the maximum number of connections that can be allocated by the pool at a given time. Use a negative value for no limit.
54skava.cache.redis.pool.maxIdleThis property holds the maximum number of idle connections in the pool. Use a negative value to indicate an unlimited number of idle connections.
55skava.cache.redis.pool.minIdleThis property holds the minimum number of idle connections to maintain in the pool. This setting only has an effect if it is positive.
56skava.cache.redis.portThis property holds the Redis server's port for the application to connect for both read and write cache operations.
57skava.cache.redis.sentinel.masterThis property represents the name of the Redis server.
58skava.cache.redis.sentinel.nodesThis property represents the comma-separated list of 'host:port' pairs.
59skava.cache.redis.sslThis property represents the Enable/Disable Redis server ssl.
60skava.cache.redis.timeoutThis property holds the connection timeout value of all Redis connections for both read and write.
61skava.cache.redis.urlThis property represents the Redis server url.
62skava.cache.useOnlyL1CacheThis property is used to enable L1 cache.
63skava.cache.useOnlyL2CacheThis property is used to enable L2 cache.
64skava.cors.allowedHeadersThis property is used to set allowedHeaders for cors request
65skava.cors.allowedMethodsThis property is used to set allowedMethods for cors request
66skava.cors.allowedOriginsThis property is used to set allowedOrigins for cors request
67skava.cors.enabledThis property is used to enable the cors component
68skava.cors.exposedHeadersThis property is used to set exposedHeaders for cors request
69skava.cors.maxAgeThis property is used to set maxAge for cors request in seconds
70skava.cors.pathPatternThis property is used to set pathPattern for cors request
71skava.crypto.aliasThis property is used to set alias for crypto component
72skava.crypto.enabledThis property is used to enable/disable the crypto component
73skava.crypto.saltThis property is used to set the salt value for crypto component
74skava.crypto.textEncryptorClassThis property is used to set the fully qualified name of the custom implementation class
75skava.event.classNameThis property is used to set the fully qualified name of the custom implementation class
76skava.event.enabledThis property is used to enable/disable the event component
77skava.event.enableExternalEventThis property is used to enable/disable the external event component
78skava.event.enableFatEventThis property is used to enable/disable the fat event
79skava.event.eventbridge.eventBusNameThis property is used to set the fully qualified name of the custom implementation class
80skava.event.eventbridge.regionThis property is used to set the fully qualified name of the custom implementation class
81skava.event.externalClassNameThis property is used to set the fully qualified name of the custom implementation class
82skava.event.externalFatEventClassThis property is used to set the fully qualified name of the custom implementation class
83skava.event.rabbitmq.addressesThis property sets the addresses for the RabbitMQ server cluster.
84skava.event.rabbitmq.cluster-enabledThis property enables or disables the cluster for the RabbitMQ server.
85skava.event.rabbitmq.concurrentConsumersThis property is used to set the maximum allowed concurrent consumers
86skava.event.rabbitmq.enabledThis property is used to enable/disable the rabbitmq server for the event component
87skava.event.rabbitmq.hostThis property is used to set the host for rabbitmq server
88skava.event.rabbitmq.passwordThis property is used to set password for rabbitmq server
89skava.event.rabbitmq.portThis property is used to set the port for rabbitmq server
90skava.event.rabbitmq.queueNameThis property is used to set the queue name used by the event component
91skava.event.rabbitmq.routingKeyThis property is used to set the routing key for rabbitmq server
92skava.event.rabbitmq.ssl.algorithmThis property sets the SSL algorithm, which is used for the RabbitMQ server.
93skava.event.rabbitmq.ssl.enabledThis property enables or disables the SSL support for RabbitMQ server.
94skava.event.rabbitmq.topicExchangeThis property is used to set the topic exchange for rabbitmq server
95skava.event.rabbitmq.userNameThis property is used to set the username for rabbitmq server
96skava.event.rabbitmq.virtualHostThis property is used to set the virtual host for rabbitmq server
97skava.hibernate.acquireIncrementacquire increment
98skava.hibernate.c3p0IdleTestPeriodidle time in seconds before a connection is automatically validated
99skava.hibernate.c3p0MaxSizeMaximum number of JDBC connections in the pool. Hibernate default- 100
100skava.hibernate.c3p0MaxStatementsNumber of prepared statements will be cached. Increase performance. Hibernate default- 0 , caching is disable.
101skava.hibernate.c3p0MinSizeMinimum number of JDBC connections in the pool. Hibernate default- 1
102skava.hibernate.c3p0TimeoutWhen an idle connection is removed from the pool (in second). Hibernate default- 0, never expire.
103skava.hibernate.dialectThis property holds the dialect to be used by Hibernate. The dialect specifies the type of database used in Hibernate so that Hibernate can generate appropriate type of SQL statements.
104skava.hibernate.driverClassNameThis property holds the JDBC driver class name for making the connections to the database.
105skava.hibernate.enabledThis property indicates whether the Hibernate component is enabled or disabled for this application. It is recommended that not to update this property from the default value.
106skava.hibernate.formatSqlThis property indicates whether the SQL statements enabled for printing should be formatted or not. If this property and the property skava.hibernate.showSql is set to true then the queries are SQL formatted making it more readable.
107skava.hibernate.hbm2ddlAutoThis property holds the strategy to be used by Hibernate on startup. The possible values are validate, update, create, or create-drop, which indicate the appropriate action will be taken on startup. It is recommended that the value is to be set as none in the production and/or production-like environments because where the schema will not be created every time the application starts up.
108skava.hibernate.hibernateReader.acquireIncrementacquire increment
109skava.hibernate.hibernateReader.c3p0IdleTestPeriodidle time in seconds before a connection is automatically validated
110skava.hibernate.hibernateReader.c3p0MaxSizeMaximum number of JDBC connections in the pool. Hibernate default- 100
111skava.hibernate.hibernateReader.c3p0MaxStatementsNumber of prepared statements will be cached. Increase performance. Hibernate default- 0 , caching is disable.
112skava.hibernate.hibernateReader.c3p0MinSizeMinimum number of JDBC connections in the pool. Hibernate default- 1
113skava.hibernate.hibernateReader.c3p0TimeoutWhen an idle connection is removed from the pool (in second). Hibernate default- 0, never expire.
114skava.hibernate.hibernateReader.enabledThis property is used to enable reader DB.
115skava.hibernate.hibernateReader.initialPoolSizeinitial PoolSize
116skava.hibernate.hibernateReader.urlThis property is used to set the database url
117skava.hibernate.initialPoolSizeinitial PoolSize
118skava.hibernate.newGeneratorMappingsThis property holds the Hibernate setting. It indicates whether the new IdentifierGenerator implementations are used for AUTO, TABLE, and SEQUENCE or not. If it is set to false, the ID generation is left to the DB sequence or the application logic. It is recommended that this property is set as false.
119skava.hibernate.packageToScanThis property indicates the Java package having all the database entity objects to be used by Hibernate component.
120skava.hibernate.passwordThis property holds the data store password to be used by Hibernate component to connect to the database.
121skava.hibernate.portThis property holds the port number of the database to be used by Hibernate component to connect to the database.
122skava.hibernate.showSqlThis property indicates whether the SQL generated by Hibernate to be printed in the log file or not. If it is set to true, will print all the SQLs generated by Hibernate as part of the dialect.
123skava.hibernate.urlThis property holds the database JDBC URL to enable the database connection.
124skava.hibernate.usernameThis property holds the username to be used by Hibernate component to connect to the database.
125skava.hikari.cache.prepStmtsThis property sets whether the PreparedStatement is used or not.
126skava.hikari.dataSourceClassNameThis property is available only via programmatic configuration or IoC container. This property allows you to directly set the instance of the DataSource to be wrapped by the pool, rather than having HikariCP construct it via reflection. This can be useful in some dependency injection frameworks. When this property is specified, the dataSourceClassName property and all DataSource-specific properties will be ignored. There is no default value.
127skava.hikari.enabledThis property enables or disables the Hikari component.
128skava.hikari.idleTimeoutThis property controls the maximum amount of time that a connection is allowed to sit idle in the pool. This setting only applies when minimumIdle is defined to be less than maximumPoolSize. The idle connections will not be retired until the pool reaches minimumIdle connections. Whether a connection is retired as idle or not is subject to a maximum variation of +30 seconds, and average variation of +15 seconds. A connection will never be retired as idle before this timeout. A value of 0 indicates the idle connections are never removed from the pool. The minimum allowed value is 10000ms (10 seconds). The default value is 600000 ms (10 minutes).
129skava.hikari.maximumlifetimeThis property controls the maximum lifetime of a connection in the pool. An in-use connection will never be retired, only when it is closed, it will then be removed. On a connection-by-connection basis, minor negative attenuation is applied to avoid mass-extinction in the pool. It is strongly recommend to set this value, and it should be several seconds shorter than any database or infrastructure imposed connection time limit. A value of 0 indicates no maximum lifetime (infinite lifetime), subject of course to the idleTimeout setting. The default value is 1800000 ms (30 minutes).
130skava.hikari.maximumPoolSizeThis property controls the maximum size of the pool, including both idle and in-use connections. This value determines the maximum number of actual connections to the database backend. The value is determined by your execution environment. When the pool reaches to this size and no idle connections are available, the call getConnection() block for up to connectionTimeout milliseconds before timing out. The default value is 10.
131skava.hikari.poolnameThis property represents a user-defined name for the connection pool. It appears mainly in the logging and JMX management consoles to identify pools and pool configurations. The default value is auto-generated.
132skava.hikari.prepStmtCachesizeThis property sets the cache size of the PreparedStatement.
133skava.hikari.prepStmtCacheSqlLimitThis property sets the SQL limit of the PreparedStatement to be cached.
134skava.hikari.useServerPrepStmtThis property sets whether the server side PreparedStatement is used or not.
135skava.keyprovider.algorithmThis property is used to set the algorithm to be used for encryption
136skava.keyprovider.enabledThis property is used to enable/disable the key provider
137skava.keyprovider.keyProviderClassThis property is used to set the fully qualified name of the custom implementation class
138skava.keyprovider.keySizeThis property is used to set the key size
139skava.keyprovider.keystorePasswordThis property is used to set the keystore password
140skava.keyprovider.keystorePathThis property is used to set the keystore path
141skava.localization.cookieEnabledThis property is used to enable/disable the localization component
142skava.localization.default-localeThis property holds the default locale to be used for all response messages if it has not been provided in the request.
143skava.localization.enabledThis property indicates whether the localization component is enabled or not. The value true indicates it is enabled and false indicates it is disabled.
144skava.localization.param-nameThis property holds the parameter name in which the localization component is used.
145skava.log.enabledThis property is used to set the resource bundle's base name.
146skava.log.fileAppenderEnabledThis property indicates whether the log needs to be appended to a log file or not. If it is set to true the log is written to the log file as specified in log4j2.yml.
147skava.log.fluentdAppenderEnabledThis property indicates whether the log file should be aggregated to Fluentd directly rather than to a file or not.
148skava.log.fluentdHostThis property holds the hostname of Fluentd server instance where the log will be aggregated.
149skava.log.fluentdPatternThis property holds the pattern for writing logs into the Fluentd server.
150skava.log.fluentdPortThis property holds the port of Fluentd server instance where the log will be aggregated.
151skava.log.fluentdTagNameThis property holds the tag name to be added to the logs.
152skava.resttemplate.cookiePolicyThis property is used to set the cookie policy
153skava.resttemplate.cxnPoolSizeThis property is used set the connection pool size.
154skava.resttemplate.cxnTimeoutMSecThis property is used set the connection time out in milli sec.
155skava.resttemplate.defaultMaxPerRouteThis property is used set the maximum templates per route.
156skava.resttemplate.enabledThis property is used to enable/disable the resttemplate
157skava.resttemplate.handleRedirectsThis property is used say if it should handle redirects or not.
158skava.resttemplate.ignoreInvalidHTTPSCertThis property is say if it should ignore invalid httpscert.
159skava.resttemplate.keyPassThis property is used set the keyPass value
160skava.resttemplate.p12FileThis property is used set the p12File path.
161skava.resttemplate.supportedProtocolsThis property is used set the supported protocols name
162skava.secretsmanager.classNameThis property is used to specify which class to be used for secret management
163skava.swaggerglobalparams.enabledThis property indicates the Swagger global params. The default value is false. If this property value is set to true, the Swagger global params from the application .yml will be referred and added in the Swagger UI.
164skava.userMerge.enabledThis property set to enable/disable the userMerge.
165skava.users.allowedPatchFieldsThis property gives the allowed patch fields.
166spring.application.nameThis property holds the application name of the Spring Boot application.
167spring.autoconfigure.excludeThis property holds the classes that are to be excluded from the Spring's autoconfiguration.
168spring.cloud.zookeeper.config.enabledThis property is used to enable/disable the zookeeper base path.
169spring.cloud.zookeeper.config.rootThis property is used to enable/disable the zookeeper base path.
170spring.cloud.zookeeper.config.watcher.enabledThis property is used to enable/disable the zookeeper watcher.
171spring.cloud.zookeeper.connect-stringThis property is used to located somewhere other than localhost:2181, the configuration is required to locate the server
172spring.cloud.zookeeper.enabledThis property is used to enable/disable the zookeeper server.
173spring.sleuth.trace-id128This property is used to enable/disable the sleuth 128 bit traceid in the logs.
174ZK_REDIS_SSL_ENABLEDThis property enables or disables the Redis server SSL. The default value is FALSE.
175ZK_REDIS_TIMEOUTThis property holds connection timeout value of Redis in milliseconds.
The default value is 10000.
176ZK_REDIS_USERNAMEThis property holds the login username of the Redis server.
The default value is empty.
177ZK_PROTOCOLSThis property enables macro support for the TLS protocol version.
178ZK_REDIS_PASSWORDThis property holds the Redis password.
179externalEventConfig.configURLThis property is used to configure the URL of the external events.
180externalEventConfig.fileHostThis property is used to configure host of the external event URL.
181externalEventConfig.tempStoragePathThis property is used to set the file path of the external event.
182endpoints.loggers.enabledThis property is used to enable or disable the logger.
183web.exposure.includeThis property is used to expose the management endpoints.
184server.max-http-header-sizeTo increase http header size we have externalize this property.
185skava.event.rabbitmq.amqpEnabled
This property is used to enable AMQP (Advanced Message Queuing Protocol). When the value is
  • true: The RabbitMQ is enabled.
  • false: The AMQP is enabled.
Note: To enable AMQP, contact the Infra team.
186skava.users.collection.allowedPropertiesThis property is used to Allow properties without Auth for User Register and Password reset.
187skava.users.mfa.qrGeneratorThe property qrGenerator is used for generating QR.
188skava.users.mfa.issuerThe property issuer is used as the Issuer of the generated QR.


Revision History
2024-07-12 | SD – Updated ZK properties.
2024-06-19 | SD – Updated ZK properties for 8.17.0 to 8.16.0.
2023-10-22 | SW – Updated content for 8.15.4 release.
2023-01-06 | SW – Updated content for 8.13 release.
2022-04-10 | JP – Fixed link and http issues.
2021-12-27 | AN – Updated content for 8.11 release.
2020-12-09 | HM – Updated missing ZK properties.
2020-03-09 | AN – Updated content for April 2020 release.
2020-01-14 | AN – Updated content for February 2020 release.
2019-07-09 | AN – Updated ZK properties for July 2019 release.
2019-06-08 | PLK – Minor updates.
2019-05-17 | AM – Updated to a new table tool.
2019-01-21 | PLK – Content uploaded.