The following table describes the ZooKeeper properties for the Subscription microservice:
Sl. #PropertyDescription
1server.servlet.contextPathThis property holds the Spring Boot application's context path.
2server.ssl.enabledThis property controls the SSL configuration for the boot application.
3server.ssl.enabled-protocolsThis property controls the SSL configuration for the Spring Boot application.
4server.ssl.key-aliasThis property holds the keystore alias name configured during the import using keytool utility.
5server.ssl.key-storeThis property holds the keystore PrivateKeyEntry, which will be used as the SSL certificate for the microservice.
6server.ssl.key-store-passwordThis property holds the keystore password for opening the keystore mentioned in the key-store property.
7server.ssl.key-store-typeThis property holds the keystore type.
8server.tomcat.accesslog.directoryThis property holds the directory details for storing accesslog.
9server.tomcat.accesslog.enabledThis property controls Tomcat logs for the Spring Boot application.
10server.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
11server.tomcat.accesslog.patternThis property is used to set the pattern for writing logs in Tomcat.
12server.tomcat.max-threadsThis property controls the tomcat requst thread.
13skava.auditlog.customLayoutFormatThis property holds the custom layout property information.
14skava.auditlog.db.driverClassNameThis property is used to connect to the mysql db for audit logs.
15skava.auditlog.db.enabledThis property is used to enable/disable the db for audit logs.
16skava.auditlog.db.passwordThis property is used to connect to the mysql db for audit logs.
17skava.auditlog.db.urlThis property is used to connect to the mysql db for audit logs.
18skava.auditlog.db.userNameThis property is used to connect to the mysql db for audit logs.
19skava.auditlog.enabledThis property enables or disables the auditlog component.
20skava.auditlog.file-locationThis property sets the file location of the auditlog component.
21skava.auditlog.layout-typeThis property sets the layout type of the auditlog component.
22skava.authorization.authExpiryTimeMinsThis property holds the expiry time of authorization token generated using the getTestToken API call. The value is mentioned in minutes.
23skava.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 Skava Framework, this property's value identifies the correct header and the header value is considered for access/authorization checks.
24skava.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).
25skava.authorization.gettesttoken.enabledThis property is used to enable the authorization endpoint for junit and readyapi testing
26skava.authorization.superAdminRoleNameThis property indicates the Super Admin role name for the corresponding microservice.
27skava.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.
28skava.cache.cascadeCacheNamesThis property is used to enable cascade cache by its name.
29skava.cache.enableCascadeThis property is used to enable cascade cache.
30skava.cache.enabledThis property is used to enable cache.
31skava.cache.localCache.config.subscriptioncollection.cacheSizeThis property represents the local cache entry size.
32skava.cache.localCache.config.subscriptioncollection.maxIdleInSecondsThis property represents the local cache maximum idle time in seconds.
33skava.cache.localCache.config.subscriptioncollection.timeToLiveInSecondsThis property represents the local cache expiry time in seconds.
34skava.cache.localCache.typeThis property represents the local cache type for L1 cache used in cascade cache.
35skava.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.
36skava.cache.redis.cacheNamesThis property holds the Redis cache names used by this application.
37skava.cache.redis.clearCacheEventNameThis property sets the event name for cache clear operation.
38skava.cache.redis.clientThis property represents the type of client for redis connection.
39skava.cache.redis.cluster.maxRedirectsThis property contains the maximum number of redirects to follow when executing commands across the clusters of the Redis server.
40skava.cache.redis.cluster.nodesThis property contains a list of comma-separated host:port pairs to bootstrap from. This represents an initial list of cluster nodes. It is required to have at least one entry.
41skava.cache.redis.clusterEnabledThis property enables or disables the cluster of the Redis server.
42skava.cache.redis.databaseThis property holds the Redis database index used by the connection factory.
43skava.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).
44skava.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. With this property, you can request Redis to hold the objects for the specified time, but it is the LRU/LCU which determines how long an entry survives in the cache.
45skava.cache.redis.hostThis property holds the Redis server's hostname/IP for caching objects.
46skava.cache.redis.maxTimeToliveThis property is used to set the max time to live in minutes time for redis cache.
47skava.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.
48skava.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.
49skava.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.
50skava.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.
51skava.cache.redis.portThis property holds the Redis server's port for the application to connect for both read and write cache operations.
52skava.cache.redis.sentinel.masterThis property contains the name of the Redis server.
53skava.cache.redis.sentinel.nodesThis property contains a list of comma-separated host:port pairs of the Redis server.
54skava.cache.redis.timeoutThis property holds the connection timeout value of all Redis connections for both read and write operations.
55skava.cache.useOnlyL2CacheThis property is used to enable L2 cache.
56skava.cors.allowedHeadersThis property contains the allowed headers value.
57skava.cors.allowedMethodsThis property contains allowed methods for Spring Boot controller.
58skava.cors.allowedOriginsThis property sets allowedOrigins for a CORS request.
59skava.cors.enabledThis property enables or disables the CORS.
60skava.cors.exposedHeadersThis property sets exposedHeaders for a CORS request.
61skava.cors.maxAgeThis property sets maxAge for a CORS request. The value is mentioned in seconds.
62skava.cors.pathPatternThis property holds the pattern for a CORS request.
63skava.crypto.aliasThis property sets alias for crypto component.
64skava.crypto.enabledThis property enables or disables the crypto component.
65skava.crypto.saltThis property sets the salt value for crypto component.
66skava.crypto.textEncryptorClassThis property sets the fully qualified name of the custom implementation class.
67skava.event.classNameThis property is used to set the fully qualified name of the custom implementation class.
68skava.event.enabledThis property enables or disables the event component.
69skava.event.enableExternalEventThis property is used to enable/disable the external event component
70skava.event.enableFatEventThis property is used to enable/disable the fat event
71skava.event.eventbridge.eventBusNameThis property is used to set the fully qualified name of the custom implementation class
72skava.event.eventbridge.regionThis property is used to set the fully qualified name of the custom implementation class
73skava.event.externalClassNameThis property is used to set the fully qualified name of the custom implementation class
74skava.event.externalFatEventClassThis property is used to set the fully qualified name of the custom implementation class
75skava.event.rabbitmq.concurrentConsumersThis property holds the value for maximum allowed concurrent consumers.
76skava.event.rabbitmq.enabledThis property enables or disables the RabbitMQ server for the event component.
77skava.event.rabbitmq.hostThis property holds the host name of the RabbitMQ server.
78skava.event.rabbitmq.passwordThis property holds the password of the RabbitMQ server.
79skava.event.rabbitmq.portThis property holds the port of the RabbitMQ server.
80skava.event.rabbitmq.ssl.addressesThis property is used to set the addresses for rabbitmq server cluster.
81skava.event.rabbitmq.ssl.algorithmThis property is used to set the ssl algorithm used for rabbitmq server.
82skava.event.rabbitmq.ssl.cluster-enabledThis property is used to enable/disable cluster for the rabbitmq server.
83skava.event.rabbitmq.ssl.enabledThis property is used to enable/disable the rabbitmq server ssl for the event component
84skava.event.rabbitmq.userNameThis property holds the username of the RabbitMQ server.
85skava.event.rabbitmq.virtualHostThis property sets the virtual host for RabbitMQ server.
86skava.hibernate.acquireIncrementThis property determines how many connections at a time c3p0 will try to acquire when the pool is exhausted. The default value is 3.
87skava.hibernate.c3p0IdleTestPeriodThis property holds the idle time in seconds before a connection is automatically validated. If the given number is greater than 0, the Hybernate connection pool c3p0 will test all idle connections, pooled but unchecked-out connections, every this number of seconds.
88skava.hibernate.c3p0MaxSizeThis property sets the maxmium connection pool for Hibernate.
89skava.hibernate.c3p0MaxStatementsThis property indicates the maximum number of prepared statements in the cache. It increases the performance. Hibernate default is 0 and the caching is disabled.
90skava.hibernate.c3p0MinSizeThis property sets the minimum connection pool for Hibernate.
91skava.hibernate.c3p0TimeoutThis property sets the database connection timeout for Hibernate.
92skava.hibernate.dialectThis property represents a dialect of SQL implemented by a particular RDBMS.
93skava.hibernate.driverClassNameThis property represents the class name of JDBC driver class.
94skava.hibernate.enabledThis property enables or disables the Hibernate component.
95skava.hibernate.formatSqlThis property formats the generated SQL statement to make it more readable.
96skava.hibernate.hbm2ddlAutoThis property sets the strategies used for DDL generation.
97skava.hibernate.hibernateReader.acquireIncrementDetermines how many connections at a time c3p0 will try to acquire when the pool is exhausted. Default- 3
98skava.hibernate.hibernateReader.c3p0IdleTestPeriodidle time in seconds before a connection is automatically validated
99skava.hibernate.hibernateReader.c3p0MaxSizeThis property is used to set maxmium connection pool for hibernate
100skava.hibernate.hibernateReader.c3p0MaxStatementsNumber of prepared statements will be cached. Increase performance. Hibernate default- 0 , caching is disable.
101skava.hibernate.hibernateReader.c3p0MinSizeThis property is used to set minimum connection pool for hibernate
102skava.hibernate.hibernateReader.c3p0TimeoutThis property is used to set database connection timeout for hibernate
103skava.hibernate.hibernateReader.enabledThis property is used to enable reader DB.
104skava.hibernate.hibernateReader.initialPoolSizeNumber of Connections a pool will try to acquire upon startup. Default- 3
105skava.hibernate.hibernateReader.urlThis property is used to set the database url
106skava.hibernate.hikari.cache.prepStmtsThis property sets whether the PreparedStatement is used or not.
107skava.hibernate.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.
108skava.hibernate.hikari.enabledThis property enables or disables the Hibernate Hikari component.
109skava.hibernate.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).
110skava.hibernate.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).
111skava.hibernate.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.
112skava.hibernate.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.
113skava.hibernate.hikari.prepStmtCachesizeThis property sets the cache size of the PreparedStatement.
114skava.hibernate.hikari.prepStmtCacheSqlLimitThis property sets the SQL limit of the PreparedStatement to be cached.
115skava.hibernate.hikari.useServerPrepStmtThis property sets whether the server side PreparedStatement is used or not.
116skava.hibernate.initialPoolSizeThis property contains the number of connections a pool will try to acquire upon startup. The default value is 3.
117skava.hibernate.newGeneratorMappingsThis property enables or disables the generator mappings.
118skava.hibernate.packageToScanThis property indicates the Java package having all the database entity objects to be scanned by the Hibernate component.
119skava.hibernate.passwordThis property sets the password for the Hibernate component.
120skava.hibernate.portThis property sets the port for Hibernate component.
121skava.hibernate.showSqlThis property enables or disables the Hibernate generate SQL.
122skava.hibernate.urlThis property sets the database URL.
123skava.hibernate.usernameThis property sets the username for Hibernate.
124skava.hikari.cachePrepStmtsThis property is used to enable/disable true
125skava.hikari.maxLifetimeThis property controls the maximum lifetime of a connection in the pool. An in-use connection will never be retired, only when it is closed will it then be removed. On a connection-by-connection basis, minor negative attenuation is applied to avoid mass-extinction in the pool. We strongly recommend setting 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. Default- 1800000 (30 minutes)
126skava.hikari.poolNameThis property represents a user-defined name for the connection pool and appears mainly in logging and JMX management consoles to identify pools and pool configurations. Default- auto-generated
127skava.hikari.prepStmtCacheSizeThis property is used to set prepStmtCacheSize
128skava.hikari.useServerPrepStmtsThis property is used to set useServerPrepStmts
129skava.keyprovider.algorithmThis property sets the algorithm to be used for encryption.
130skava.keyprovider.enabledThis property enables or disables the key provider.
131skava.keyprovider.keyProviderClassThis property sets the fully qualified name of the custom implementation class.
132skava.keyprovider.keySizeThis property sets the key size.
133skava.keyprovider.keystorePasswordThis property sets the keystore password.
134skava.keyprovider.keystorePathThis property sets the keystore path.
135skava.localization.cookieEnabledThis property indicates whether the localization component cookie is enabled or not. The value:
  • true indicates that the localization component cookie has been enabled
  • false indicates that the localization component cookie has been disabled
136skava.localization.default-localeThis property holds the default locale to be used for all response messages if it has not been provided in the request.
137skava.localization.enabledThis property indicates whether the localization component is enabled or not. The value:
  • true indicates that the localization component has been enabled
  • false indicates that the localization component has been disabled
138skava.localization.externalPathThis property holds the external path from where the localized messages are to be read from.
139skava.localization.param-nameThis property holds the parameter name in which the localization component is used.
140skava.localization.resourceBundleBaseNameThis property holds the resource bundle using the specified base name.
141skava.log.enabledThis property indicates whether the log component is enabled or not. The value:
  • true indicates that the log component has been enabled
  • false indicates that the log component has been disabled
142skava.log.fileAppenderEnabledThis property indicates whether the log needs to be appended to a log file or not. If set to true the log is written to the log file as specified in log4j2.yml.
143skava.log.fluentdAppenderEnabledThis property indicates whether the log file should be aggregated to Fluentd directly rather than to a file.
144skava.log.fluentdHostThis property holds the host name for Fluentd server instance where the log will be aggregated.
145skava.log.fluentdPatternThis property holds the pattern for writing logs into the Fluentd server.
146skava.log.fluentdPortThis property holds the port of Fluentd server instance where the log will be aggregated.
147skava.log.fluentdTagNameThis property holds the tag name to be added in the logs.
148skava.previewmode.enabledIf the property is enabled, The preview mode of the subscription will be active.
149skava.resttemplate.cookiePolicyThis property is used to ignore cookies
150skava.resttemplate.cxnPoolSizeThis property is used to set the connection pool size
151skava.resttemplate.cxn-timeout-m-secThis property is used to set connection timeout in milliseconds
152skava.resttemplate.defaultMaxPerRouteSet the total number of concurrent connections to a specific route, which is 2 by default
153skava.resttemplate.enabledThis property is used to enable the resttemplate component
154skava.resttemplate.handleRedirectsThis property is used to enable the redirects for resttemplate component
155skava.resttemplate.ignore-invalid-h-t-t-p-s-certThis property is used to enable/disable invalid https certificate
156skava.resttemplate.keyPassThis property is used to set the password for keystore
157skava.resttemplate.p12FileThis property is used to set the p12 file path
158skava.resttemplate.read-timeoutThis property is used to set read timeout in milliseconds
159skava.resttemplate.supportedProtocolsThis property is used to set the protocols for http calls
160skava.secretsmanager.classNameThis property is used to specify which class to be used for secret management
161skava.swaggerglobalparams.enabledIf this property is enabled Swagger global params from the application.yml will be referred and added in the swagger-ui
162spring.application.nameThis property sets the application name of Spring Boot.
163spring.autoconfigure.excludeThis property holds the classes that are to be excluded from the Spring's autoconfiguration.
164spring.cloud.zookeeper.config.enabledThis property is used to enable/disable the zookeeper base path.
165spring.cloud.zookeeper.config.rootThis property is used to enable/disable the zookeeper base path.
166spring.cloud.zookeeper.config.watcher.enabledThis property is used to enable/disable the zookeeper watcher.
167spring.cloud.zookeeper.connect-stringThis property is used to located somewhere other than localhost:2181, the configuration is required to locate the server
168spring.cloud.zookeeper.enabledThis property enables or disables the zookeeper server.
169spring.sleuth.trace-id128This property is used to enable/disable the sleuth 128 bit traceid in the logs.
170ZK_REDIS_SSL_ENABLEDThis property enables or disables the Redis server SSL. The default value is FALSE.
171ZK_REDIS_TIMEOUTThis property holds connection timeout value of Redis in milliseconds.
The default value is 10000.
172ZK_REDIS_USERNAMEThis property holds the login username of the Redis server.
The default value is empty.
173ZK_PROTOCOLSThis property enables macro support for the TLS protocol version.
174ZK_REDIS_PASSWORDThis property holds the Redis password.
175skava.event.eventbridge.gzip.enabledThis property is used to enable/disable the event payload compression.
176skava.event.eventbridge.gzip.minSizeForCompressThis property is used to set the minimum size of event to be send without compression.
177skava.cache.redis.usernameThis property indicates the login username of the Redis server.
178endpoints.loggers.enabledThis property is used to enable or disable the logger.
179web.exposure.includeThis property is used to expose the management endpoints.
180server.max-http-header-sizeTo increase http header size we have externalize this property.
181externalEventConfig.fileHostThis property is used to set the hosting events on external website.
182externalEventConfig.tempStoragePathThis property is used to set the file path for the external events.
183skava.event.rabbitmq.amqpEnabledThis 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.

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 | JP – Updated content for 8.15.4 release.
2023-01-05 | 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-09-24 | AN – Page created and uploaded the contents for September 2019 release.