Skip to content

Appendix A: 公共应用程序属性

可以在 application.properties , application.yml 文件内或作为命令行开关指定各种属性. 本附录提供了常见的 Spring Boot 属性列表以及对使用它们的基础类的引用.

TIP

Spring Boot 提供了各种具有高级值格式的 属性转换 机制,请务必查看属性转换部分.

TIP

属性提供者可能来自类路径上的其他 jar 文件,因此您不应将其视为详尽的列表. 另外,您可以定义自己的属性.

A.1. Core Properties

NameDescriptionDefault Value
debugEnable debug logs.false
info.*Arbitrary properties to add to the info endpoint.
logging.charset.consoleCharset to use for console output.
logging.charset.fileCharset to use for file output.
logging.configLocation of the logging configuration file. For instance, classpath:logback.xml for Logback.
logging.exception-conversion-wordConversion word used when logging exceptions.%wEx
logging.file.nameLog file name (for instance, myapp.log). Names can be an exact location or relative to the current directory.
logging.file.pathLocation of the log file. For instance, /var/log.
logging.group.*Log groups to quickly change multiple loggers at the same time. For instance, logging.group.db=org.hibernate,org.springframework.jdbc.
logging.level.*Log levels severity mapping. For instance, logging.level.org.springframework=DEBUG.
logging.log4j2.config.overrideOverriding configuration files used to create a composite configuration.
logging.logback.rollingpolicy.clean-history-on-startWhether to clean the archive log files on startup.false
logging.logback.rollingpolicy.file-name-patternPattern for rolled-over log file names.${LOG_FILE}.%d{yyyy-MM-dd}.%i.gz
logging.logback.rollingpolicy.max-file-sizeMaximum log file size.10MB
logging.logback.rollingpolicy.max-historyMaximum number of archive log files to keep.7
logging.logback.rollingpolicy.total-size-capTotal size of log backups to be kept.0B
logging.pattern.consoleAppender pattern for output to the console. Supported only with the default Logback setup.%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
logging.pattern.dateformatAppender pattern for log date format. Supported only with the default Logback setup.yyyy-MM-dd HH:mm:ss.SSS
logging.pattern.fileAppender pattern for output to a file. Supported only with the default Logback setup.%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
logging.pattern.levelAppender pattern for log level. Supported only with the default Logback setup.%5p
logging.register-shutdown-hookRegister a shutdown hook for the logging system when it is initialized. Disabled automatically when deployed as a war file.true
spring.aop.autoAdd @EnableAspectJAutoProxy.true
spring.aop.proxy-target-classWhether subclass-based (CGLIB) proxies are to be created (true), as opposed to standard Java interface-based proxies (false).true
spring.application.admin.enabledWhether to enable admin features for the application.false
spring.application.admin.jmx-nameJMX name of the application admin MBean.org.springframework.boot:type=Admin,name=SpringApplication
spring.application.nameApplication name.
spring.autoconfigure.excludeAuto-configuration classes to exclude.
spring.banner.charsetBanner file encoding.UTF-8
spring.banner.image.bitdepthBit depth to use for ANSI colors. Supported values are 4 (16 color) or 8 (256 color).4
spring.banner.image.heightHeight of the banner image in chars (default based on image height).
spring.banner.image.invertWhether images should be inverted for dark terminal themes.false
spring.banner.image.locationBanner image file location (jpg or png can also be used).classpath:banner.gif
spring.banner.image.marginLeft hand image margin in chars.2
spring.banner.image.pixelmodePixel mode to use when rendering the image.TEXT
spring.banner.image.widthWidth of the banner image in chars.76
spring.banner.locationBanner text resource location.classpath:banner.txt
spring.beaninfo.ignoreWhether to skip search of BeanInfo classes.true
spring.codec.log-request-detailsWhether to log form data at DEBUG level, and headers at TRACE level.false
spring.codec.max-in-memory-sizeLimit on the number of bytes that can be buffered whenever the input stream needs to be aggregated. This applies only to the auto-configured WebFlux server and WebClient instances. By default this is not set, in which case individual codec defaults apply. Most codecs are limited to 256K by default.
spring.config.activate.on-cloud-platformRequired cloud platform for the document to be included.
spring.config.activate.on-profileProfile expressions that should match for the document to be included.
spring.config.additional-locationConfig file locations used in addition to the defaults.
spring.config.importImport additional config data.
spring.config.locationConfig file locations that replace the defaults.
spring.config.nameConfig file name.application
spring.config.use-legacy-processingWhether to enable configuration data processing legacy mode.false
spring.info.build.encodingFile encoding.UTF-8
spring.info.build.locationLocation of the generated build-info.properties file.classpath:META-INF/build-info.properties
spring.info.git.encodingFile encoding.UTF-8
spring.info.git.locationLocation of the generated git.properties file.classpath:git.properties
spring.jmx.default-domainJMX domain name.
spring.jmx.enabledExpose management beans to the JMX domain.false
spring.jmx.serverMBeanServer bean name.mbeanServer
spring.jmx.unique-namesWhether unique runtime object names should be ensured.false
spring.lifecycle.timeout-per-shutdown-phaseTimeout for the shutdown of any phase (group of SmartLifecycle beans with the same 'phase' value).30s
spring.main.allow-bean-definition-overridingWhether bean definition overriding, by registering a definition with the same name as an existing definition, is allowed.false
spring.main.allow-circular-referencesWhether to allow circular references between beans and automatically try to resolve them.false
spring.main.banner-modeMode used to display the banner when the application runs.console
spring.main.cloud-platformOverride the Cloud Platform auto-detection.
spring.main.lazy-initializationWhether initialization should be performed lazily.false
spring.main.log-startup-infoWhether to log information about the application when it starts.true
spring.main.register-shutdown-hookWhether the application should have a shutdown hook registered.true
spring.main.sourcesSources (class names, package names, or XML resource locations) to include in the ApplicationContext.
spring.main.web-application-typeFlag to explicitly request a specific type of web application. If not set, auto-detected based on the classpath.
spring.mandatory-file-encodingExpected character encoding the application must use.
spring.messages.always-use-message-formatWhether to always apply the MessageFormat rules, parsing even messages without arguments.false
spring.messages.basenameComma-separated list of basenames (essentially a fully-qualified classpath location), each following the ResourceBundle convention with relaxed support for slash based locations. If it doesn't contain a package qualifier (such as "org.mypackage"), it will be resolved from the classpath root.messages
spring.messages.cache-durationLoaded resource bundle files cache duration. When not set, bundles are cached forever. If a duration suffix is not specified, seconds will be used.
spring.messages.encodingMessage bundles encoding.UTF-8
spring.messages.fallback-to-system-localeWhether to fall back to the system Locale if no files for a specific Locale have been found. if this is turned off, the only fallback will be the default file (e.g. "messages.properties" for basename "messages").true
spring.messages.use-code-as-default-messageWhether to use the message code as the default message instead of throwing a "NoSuchMessageException". Recommended during development only.false
spring.output.ansi.enabledConfigures the ANSI output.detect
spring.pid.fail-on-write-errorFails if ApplicationPidFileWriter is used but it cannot write the PID file.
spring.pid.fileLocation of the PID file to write (if ApplicationPidFileWriter is used).
spring.profiles.activeComma-separated list of active profiles. Can be overridden by a command line switch.
spring.profiles.defaultName of the profile to enable if no profile is active.default
spring.profiles.group.*Profile groups to define a logical name for a related group of profiles.
spring.profiles.includeUnconditionally activate the specified comma-separated list of profiles (or list of profiles if using YAML).
spring.quartz.auto-startupWhether to automatically start the scheduler after initialization.true
spring.quartz.jdbc.comment-prefixPrefixes for single-line comments in SQL initialization scripts.[#, --]
spring.quartz.jdbc.initialize-schemaDatabase schema initialization mode.embedded
spring.quartz.jdbc.platformPlatform to use in initialization scripts if the @@platform@@ placeholder is used. Auto-detected by default.
spring.quartz.jdbc.schemaPath to the SQL file to use to initialize the database schema.classpath:org/quartz/impl/jdbcjobstore/tables_@@platform@@.sql
spring.quartz.job-store-typeQuartz job store type.memory
spring.quartz.overwrite-existing-jobsWhether configured jobs should overwrite existing job definitions.false
spring.quartz.properties.*Additional Quartz Scheduler properties.
spring.quartz.scheduler-nameName of the scheduler.quartzScheduler
spring.quartz.startup-delayDelay after which the scheduler is started once initialization completes. Setting this property makes sense if no jobs should be run before the entire application has started up.0s
spring.quartz.wait-for-jobs-to-complete-on-shutdownWhether to wait for running jobs to complete on shutdown.false
spring.reactor.debug-agent.enabledWhether the Reactor Debug Agent should be enabled when reactor-tools is present.true
spring.task.execution.pool.allow-core-thread-timeoutWhether core threads are allowed to time out. This enables dynamic growing and shrinking of the pool.true
spring.task.execution.pool.core-sizeCore number of threads.8
spring.task.execution.pool.keep-aliveTime limit for which threads may remain idle before being terminated.60s
spring.task.execution.pool.max-sizeMaximum allowed number of threads. If tasks are filling up the queue, the pool can expand up to that size to accommodate the load. Ignored if the queue is unbounded.
spring.task.execution.pool.queue-capacityQueue capacity. An unbounded capacity does not increase the pool and therefore ignores the "max-size" property.
spring.task.execution.shutdown.await-terminationWhether the executor should wait for scheduled tasks to complete on shutdown.false
spring.task.execution.shutdown.await-termination-periodMaximum time the executor should wait for remaining tasks to complete.
spring.task.execution.thread-name-prefixPrefix to use for the names of newly created threads.task-
spring.task.scheduling.pool.sizeMaximum allowed number of threads.1
spring.task.scheduling.shutdown.await-terminationWhether the executor should wait for scheduled tasks to complete on shutdown.false
spring.task.scheduling.shutdown.await-termination-periodMaximum time the executor should wait for remaining tasks to complete.
spring.task.scheduling.thread-name-prefixPrefix to use for the names of newly created threads.scheduling-
traceEnable trace logs.false

A.2. Cache Properties

NameDescriptionDefault Value
spring.cache.cache-namesComma-separated list of cache names to create if supported by the underlying cache manager. Usually, this disables the ability to create additional caches on-the-fly.
spring.cache.caffeine.specThe spec to use to create caches. See CaffeineSpec for more details on the spec format.
spring.cache.couchbase.expirationEntry expiration. By default the entries never expire. Note that this value is ultimately converted to seconds.
spring.cache.ehcache.configThe location of the configuration file to use to initialize EhCache.
spring.cache.infinispan.configThe location of the configuration file to use to initialize Infinispan.
spring.cache.jcache.configThe location of the configuration file to use to initialize the cache manager. The configuration file is dependent of the underlying cache implementation.
spring.cache.jcache.providerFully qualified name of the CachingProvider implementation to use to retrieve the JSR-107 compliant cache manager. Needed only if more than one JSR-107 implementation is available on the classpath.
spring.cache.redis.cache-null-valuesAllow caching null values.true
spring.cache.redis.enable-statisticsWhether to enable cache statistics.false
spring.cache.redis.key-prefixKey prefix.
spring.cache.redis.time-to-liveEntry expiration. By default the entries never expire.
spring.cache.redis.use-key-prefixWhether to use the key prefix when writing to Redis.true
spring.cache.typeCache type. By default, auto-detected according to the environment.

A.3. Mail Properties

NameDescriptionDefault Value
spring.mail.default-encodingDefault MimeMessage encoding.UTF-8
spring.mail.hostSMTP server host. For instance, 'smtp.example.com'.
spring.mail.jndi-nameSession JNDI name. When set, takes precedence over other Session settings.
spring.mail.passwordLogin password of the SMTP server.
spring.mail.portSMTP server port.
spring.mail.properties.*Additional JavaMail Session properties.
spring.mail.protocolProtocol used by the SMTP server.smtp
spring.mail.test-connectionWhether to test that the mail server is available on startup.false
spring.mail.usernameLogin user of the SMTP server.
spring.sendgrid.api-keySendGrid API key.
spring.sendgrid.proxy.hostSendGrid proxy host.
spring.sendgrid.proxy.portSendGrid proxy port.

A.4. JSON Properties

NameDescriptionDefault Value
spring.gson.date-formatFormat to use when serializing Date objects.
spring.gson.disable-html-escapingWhether to disable the escaping of HTML characters such as '<', '>', etc.
spring.gson.disable-inner-class-serializationWhether to exclude inner classes during serialization.
spring.gson.enable-complex-map-key-serializationWhether to enable serialization of complex map keys (i.e. non-primitives).
spring.gson.exclude-fields-without-expose-annotationWhether to exclude all fields from consideration for serialization or deserialization that do not have the "Expose" annotation.
spring.gson.field-naming-policyNaming policy that should be applied to an object's field during serialization and deserialization.
spring.gson.generate-non-executable-jsonWhether to generate non-executable JSON by prefixing the output with some special text.
spring.gson.lenientWhether to be lenient about parsing JSON that doesn't conform to RFC 4627.
spring.gson.long-serialization-policySerialization policy for Long and long types.
spring.gson.pretty-printingWhether to output serialized JSON that fits in a page for pretty printing.
spring.gson.serialize-nullsWhether to serialize null fields.
spring.jackson.constructor-detectorStrategy to use to auto-detect constructor, and in particular behavior with single-argument constructors.default
spring.jackson.date-formatDate format string or a fully-qualified date format class name. For instance, 'yyyy-MM-dd HH:mm:ss'.
spring.jackson.default-leniencyGlobal default setting (if any) for leniency.
spring.jackson.default-property-inclusionControls the inclusion of properties during serialization. Configured with one of the values in Jackson's JsonInclude.Include enumeration.
spring.jackson.deserialization.*Jackson on/off features that affect the way Java objects are deserialized.
spring.jackson.generator.*Jackson on/off features for generators.
spring.jackson.localeLocale used for formatting.
spring.jackson.mapper.*Jackson general purpose on/off features.
spring.jackson.parser.*Jackson on/off features for parsers.
spring.jackson.property-naming-strategyOne of the constants on Jackson's PropertyNamingStrategies. Can also be a fully-qualified class name of a PropertyNamingStrategy implementation.
spring.jackson.serialization.*Jackson on/off features that affect the way Java objects are serialized.
spring.jackson.time-zoneTime zone used when formatting dates. For instance, "America/Los_Angeles" or "GMT+10".
spring.jackson.visibility.*Jackson visibility thresholds that can be used to limit which methods (and fields) are auto-detected.

A.5. Data Properties

NameDescriptionDefault Value
spring.couchbase.connection-stringConnection string used to locate the Couchbase cluster.
spring.couchbase.env.io.idle-http-connection-timeoutLength of time an HTTP connection may remain idle before it is closed and removed from the pool.4500ms
spring.couchbase.env.io.max-endpointsMaximum number of sockets per node.12
spring.couchbase.env.io.min-endpointsMinimum number of sockets per node.1
spring.couchbase.env.ssl.enabledWhether to enable SSL support. Enabled automatically if a "keyStore" is provided unless specified otherwise.
spring.couchbase.env.ssl.key-storePath to the JVM key store that holds the certificates.
spring.couchbase.env.ssl.key-store-passwordPassword used to access the key store.
spring.couchbase.env.timeouts.analyticsTimeout for the analytics service.75s
spring.couchbase.env.timeouts.connectBucket connect timeout.10s
spring.couchbase.env.timeouts.disconnectBucket disconnect timeout.10s
spring.couchbase.env.timeouts.key-valueTimeout for operations on a specific key-value.2500ms
spring.couchbase.env.timeouts.key-value-durableTimeout for operations on a specific key-value with a durability level.10s
spring.couchbase.env.timeouts.managementTimeout for the management operations.75s
spring.couchbase.env.timeouts.queryN1QL query operations timeout.75s
spring.couchbase.env.timeouts.searchTimeout for the search service.75s
spring.couchbase.env.timeouts.viewRegular and geospatial view operations timeout.75s
spring.couchbase.passwordCluster password.
spring.couchbase.usernameCluster username.
spring.dao.exceptiontranslation.enabledWhether to enable the PersistenceExceptionTranslationPostProcessor.true
spring.data.cassandra.compressionCompression supported by the Cassandra binary protocol.none
spring.data.cassandra.configLocation of the configuration file to use.
spring.data.cassandra.connection.connect-timeoutTimeout to use when establishing driver connections.5s
spring.data.cassandra.connection.init-query-timeoutTimeout to use for internal queries that run as part of the initialization process, just after a connection is opened.5s
spring.data.cassandra.contact-pointsCluster node addresses in the form 'host:port', or a simple 'host' to use the configured port.[127.0.0.1:9042]
spring.data.cassandra.controlconnection.timeoutTimeout to use for control queries.5s
spring.data.cassandra.keyspace-nameKeyspace name to use.
spring.data.cassandra.local-datacenterDatacenter that is considered "local". Contact points should be from this datacenter.
spring.data.cassandra.passwordLogin password of the server.
spring.data.cassandra.pool.heartbeat-intervalHeartbeat interval after which a message is sent on an idle connection to make sure it's still alive.30s
spring.data.cassandra.pool.idle-timeoutIdle timeout before an idle connection is removed.5s
spring.data.cassandra.portPort to use if a contact point does not specify one.9042
spring.data.cassandra.repositories.typeType of Cassandra repositories to enable.auto
spring.data.cassandra.request.consistencyQueries consistency level.
spring.data.cassandra.request.page-sizeHow many rows will be retrieved simultaneously in a single network round-trip.5000
spring.data.cassandra.request.serial-consistencyQueries serial consistency level.
spring.data.cassandra.request.throttler.drain-intervalHow often the throttler attempts to dequeue requests. Set this high enough that each attempt will process multiple entries in the queue, but not delay requests too much.
spring.data.cassandra.request.throttler.max-concurrent-requestsMaximum number of requests that are allowed to execute in parallel.
spring.data.cassandra.request.throttler.max-queue-sizeMaximum number of requests that can be enqueued when the throttling threshold is exceeded.
spring.data.cassandra.request.throttler.max-requests-per-secondMaximum allowed request rate.
spring.data.cassandra.request.throttler.typeRequest throttling type.none
spring.data.cassandra.request.timeoutHow long the driver waits for a request to complete.2s
spring.data.cassandra.schema-actionSchema action to take at startup.none
spring.data.cassandra.session-nameName of the Cassandra session.
spring.data.cassandra.sslEnable SSL support.false
spring.data.cassandra.usernameLogin user of the server.
spring.data.couchbase.auto-indexAutomatically create views and indexes. Use the meta-data provided by "@ViewIndexed", "@N1qlPrimaryIndexed" and "@N1qlSecondaryIndexed".false
spring.data.couchbase.bucket-nameName of the bucket to connect to.
spring.data.couchbase.field-naming-strategyFully qualified name of the FieldNamingStrategy to use.
spring.data.couchbase.repositories.typeType of Couchbase repositories to enable.auto
spring.data.couchbase.scope-nameName of the scope used for all collection access.
spring.data.couchbase.type-keyName of the field that stores the type information for complex types when using "MappingCouchbaseConverter"._class
spring.data.elasticsearch.repositories.enabledWhether to enable Elasticsearch repositories.true
spring.data.jdbc.repositories.enabledWhether to enable JDBC repositories.true
spring.data.jpa.repositories.bootstrap-modeBootstrap mode for JPA repositories.default
spring.data.jpa.repositories.enabledWhether to enable JPA repositories.true
spring.data.ldap.repositories.enabledWhether to enable LDAP repositories.true
spring.data.mongodb.authentication-databaseAuthentication database name.
spring.data.mongodb.auto-index-creationWhether to enable auto-index creation.
spring.data.mongodb.databaseDatabase name.
spring.data.mongodb.field-naming-strategyFully qualified name of the FieldNamingStrategy to use.
spring.data.mongodb.gridfs.bucketGridFS bucket name.
spring.data.mongodb.gridfs.databaseGridFS database name.
spring.data.mongodb.hostMongo server host. Cannot be set with URI.
spring.data.mongodb.passwordLogin password of the mongo server. Cannot be set with URI.
spring.data.mongodb.portMongo server port. Cannot be set with URI.
spring.data.mongodb.replica-set-nameRequired replica set name for the cluster. Cannot be set with URI.
spring.data.mongodb.repositories.typeType of Mongo repositories to enable.auto
spring.data.mongodb.uriMongo database URI. Cannot be set with host, port, credentials and replica set name.mongodb://localhost/test
spring.data.mongodb.usernameLogin user of the mongo server. Cannot be set with URI.
spring.data.mongodb.uuid-representationRepresentation to use when converting a UUID to a BSON binary value.java-legacy
spring.data.neo4j.databaseDatabase name to use. By default, the server decides the default database to use.
spring.data.neo4j.repositories.typeType of Neo4j repositories to enable.auto
spring.data.r2dbc.repositories.enabledWhether to enable R2DBC repositories.true
spring.data.redis.repositories.enabledWhether to enable Redis repositories.true
spring.data.rest.base-pathBase path to be used by Spring Data REST to expose repository resources.
spring.data.rest.default-media-typeContent type to use as a default when none is specified.
spring.data.rest.default-page-sizeDefault size of pages.
spring.data.rest.detection-strategyStrategy to use to determine which repositories get exposed.default
spring.data.rest.enable-enum-translationWhether to enable enum value translation through the Spring Data REST default resource bundle.
spring.data.rest.limit-param-nameName of the URL query string parameter that indicates how many results to return at once.
spring.data.rest.max-page-sizeMaximum size of pages.
spring.data.rest.page-param-nameName of the URL query string parameter that indicates what page to return.
spring.data.rest.return-body-on-createWhether to return a response body after creating an entity.
spring.data.rest.return-body-on-updateWhether to return a response body after updating an entity.
spring.data.rest.sort-param-nameName of the URL query string parameter that indicates what direction to sort results.
spring.data.solr.hostSolr host. Ignored if "zk-host" is set.http://127.0.0.1:8983/solr
spring.data.solr.zk-hostZooKeeper host address in the form HOST:PORT.
spring.data.web.pageable.default-page-sizeDefault page size.20
spring.data.web.pageable.max-page-sizeMaximum page size to be accepted.2000
spring.data.web.pageable.one-indexed-parametersWhether to expose and assume 1-based page number indexes. Defaults to "false", meaning a page number of 0 in the request equals the first page.false
spring.data.web.pageable.page-parameterPage index parameter name.page
spring.data.web.pageable.prefixGeneral prefix to be prepended to the page number and page size parameters.
spring.data.web.pageable.qualifier-delimiterDelimiter to be used between the qualifier and the actual page number and size properties._
spring.data.web.pageable.size-parameterPage size parameter name.size
spring.data.web.sort.sort-parameterSort parameter name.sort
spring.datasource.dbcp2.abandoned-usage-tracking
spring.datasource.dbcp2.access-to-underlying-connection-allowed
spring.datasource.dbcp2.auto-commit-on-return
spring.datasource.dbcp2.cache-state
spring.datasource.dbcp2.clear-statement-pool-on-return
spring.datasource.dbcp2.connection-factory-class-name
spring.datasource.dbcp2.connection-init-sqls
spring.datasource.dbcp2.default-auto-commit
spring.datasource.dbcp2.default-catalog
spring.datasource.dbcp2.default-query-timeout
spring.datasource.dbcp2.default-read-only
spring.datasource.dbcp2.default-schema
spring.datasource.dbcp2.default-transaction-isolation
spring.datasource.dbcp2.disconnection-sql-codes
spring.datasource.dbcp2.driver
spring.datasource.dbcp2.driver-class-name
spring.datasource.dbcp2.eviction-policy-class-name
spring.datasource.dbcp2.fast-fail-validation
spring.datasource.dbcp2.initial-size
spring.datasource.dbcp2.jmx-name
spring.datasource.dbcp2.lifo
spring.datasource.dbcp2.log-abandoned
spring.datasource.dbcp2.log-expired-connections
spring.datasource.dbcp2.login-timeout
spring.datasource.dbcp2.max-conn-lifetime-millis
spring.datasource.dbcp2.max-idle
spring.datasource.dbcp2.max-open-prepared-statements
spring.datasource.dbcp2.max-total
spring.datasource.dbcp2.max-wait-millis
spring.datasource.dbcp2.min-evictable-idle-time-millis
spring.datasource.dbcp2.min-idle
spring.datasource.dbcp2.num-tests-per-eviction-run
spring.datasource.dbcp2.password
spring.datasource.dbcp2.pool-prepared-statements
spring.datasource.dbcp2.remove-abandoned-on-borrow
spring.datasource.dbcp2.remove-abandoned-on-maintenance
spring.datasource.dbcp2.remove-abandoned-timeout
spring.datasource.dbcp2.rollback-on-return
spring.datasource.dbcp2.soft-min-evictable-idle-time-millis
spring.datasource.dbcp2.test-on-borrow
spring.datasource.dbcp2.test-on-create
spring.datasource.dbcp2.test-on-return
spring.datasource.dbcp2.test-while-idle
spring.datasource.dbcp2.time-between-eviction-runs-millis
spring.datasource.dbcp2.url
spring.datasource.dbcp2.username
spring.datasource.dbcp2.validation-query
spring.datasource.dbcp2.validation-query-timeout
Commons DBCP2 specific settings bound to an instance of DBCP2's BasicDataSource
spring.datasource.driver-class-nameFully qualified name of the JDBC driver. Auto-detected based on the URL by default.
spring.datasource.embedded-database-connectionConnection details for an embedded database. Defaults to the most suitable embedded database that is available on the classpath.
spring.datasource.generate-unique-nameWhether to generate a random datasource name.true
spring.datasource.hikari.allow-pool-suspension
spring.datasource.hikari.auto-commit
spring.datasource.hikari.catalog
spring.datasource.hikari.connection-init-sql
spring.datasource.hikari.connection-test-query
spring.datasource.hikari.connection-timeout
spring.datasource.hikari.data-source-class-name
spring.datasource.hikari.data-source-j-n-d-i
spring.datasource.hikari.data-source-properties
spring.datasource.hikari.driver-class-name
spring.datasource.hikari.exception-override-class-name
spring.datasource.hikari.health-check-properties
spring.datasource.hikari.idle-timeout
spring.datasource.hikari.initialization-fail-timeout
spring.datasource.hikari.isolate-internal-queries
spring.datasource.hikari.jdbc-url
spring.datasource.hikari.keepalive-time
spring.datasource.hikari.leak-detection-threshold
spring.datasource.hikari.login-timeout
spring.datasource.hikari.max-lifetime
spring.datasource.hikari.maximum-pool-size
spring.datasource.hikari.metrics-tracker-factory
spring.datasource.hikari.minimum-idle
spring.datasource.hikari.password
spring.datasource.hikari.pool-name
spring.datasource.hikari.read-only
spring.datasource.hikari.register-mbeans
spring.datasource.hikari.scheduled-executor
spring.datasource.hikari.schema
spring.datasource.hikari.transaction-isolation
spring.datasource.hikari.username
spring.datasource.hikari.validation-timeout
Hikari specific settings bound to an instance of Hikari's HikariDataSource
spring.datasource.jndi-nameJNDI location of the datasource. Class, url, username and password are ignored when set.
spring.datasource.nameDatasource name to use if "generate-unique-name" is false. Defaults to "testdb" when using an embedded database, otherwise null.
spring.datasource.oracleucp.abandoned-connection-timeout
spring.datasource.oracleucp.connection-factory-class-name
spring.datasource.oracleucp.connection-factory-properties
spring.datasource.oracleucp.connection-harvest-max-count
spring.datasource.oracleucp.connection-harvest-trigger-count
spring.datasource.oracleucp.connection-labeling-high-cost
spring.datasource.oracleucp.connection-pool-name
spring.datasource.oracleucp.connection-properties
spring.datasource.oracleucp.connection-repurpose-threshold
spring.datasource.oracleucp.connection-validation-timeout
spring.datasource.oracleucp.connection-wait-timeout
spring.datasource.oracleucp.data-source-name
spring.datasource.oracleucp.database-name
spring.datasource.oracleucp.description
spring.datasource.oracleucp.fast-connection-failover-enabled
spring.datasource.oracleucp.high-cost-connection-reuse-threshold
spring.datasource.oracleucp.inactive-connection-timeout
spring.datasource.oracleucp.initial-pool-size
spring.datasource.oracleucp.login-timeout
spring.datasource.oracleucp.max-connection-reuse-count
spring.datasource.oracleucp.max-connection-reuse-time
spring.datasource.oracleucp.max-connections-per-shard
spring.datasource.oracleucp.max-idle-time
spring.datasource.oracleucp.max-pool-size
spring.datasource.oracleucp.max-statements
spring.datasource.oracleucp.min-pool-size
spring.datasource.oracleucp.network-protocol
spring.datasource.oracleucp.o-n-s-configuration
spring.datasource.oracleucp.pdb-roles
spring.datasource.oracleucp.port-number
spring.datasource.oracleucp.property-cycle
spring.datasource.oracleucp.query-timeout
spring.datasource.oracleucp.read-only-instance-allowed
spring.datasource.oracleucp.role-name
spring.datasource.oracleucp.s-q-l-for-validate-connection
spring.datasource.oracleucp.seconds-to-trust-idle-connection
spring.datasource.oracleucp.server-name
spring.datasource.oracleucp.sharding-mode
spring.datasource.oracleucp.time-to-live-connection-timeout
spring.datasource.oracleucp.timeout-check-interval
spring.datasource.oracleucp.u-r-l
spring.datasource.oracleucp.user
spring.datasource.oracleucp.validate-connection-on-borrow
Oracle UCP specific settings bound to an instance of Oracle UCP's PoolDataSource
spring.datasource.passwordLogin password of the database.
spring.datasource.tomcat.abandon-when-percentage-full
spring.datasource.tomcat.access-to-underlying-connection-allowed
spring.datasource.tomcat.alternate-username-allowed
spring.datasource.tomcat.commit-on-return
spring.datasource.tomcat.connection-properties
spring.datasource.tomcat.data-source-j-n-d-i
spring.datasource.tomcat.db-properties
spring.datasource.tomcat.default-auto-commit
spring.datasource.tomcat.default-catalog
spring.datasource.tomcat.default-read-only
spring.datasource.tomcat.default-transaction-isolation
spring.datasource.tomcat.driver-class-name
spring.datasource.tomcat.fair-queue
spring.datasource.tomcat.ignore-exception-on-pre-load
spring.datasource.tomcat.init-s-q-l
spring.datasource.tomcat.initial-size
spring.datasource.tomcat.jdbc-interceptors
spring.datasource.tomcat.jmx-enabled
spring.datasource.tomcat.log-abandoned
spring.datasource.tomcat.log-validation-errors
spring.datasource.tomcat.login-timeout
spring.datasource.tomcat.max-active
spring.datasource.tomcat.max-age
spring.datasource.tomcat.max-idle
spring.datasource.tomcat.max-wait
spring.datasource.tomcat.min-evictable-idle-time-millis
spring.datasource.tomcat.min-idle
spring.datasource.tomcat.name
spring.datasource.tomcat.num-tests-per-eviction-run
spring.datasource.tomcat.password
spring.datasource.tomcat.propagate-interrupt-state
spring.datasource.tomcat.remove-abandoned
spring.datasource.tomcat.remove-abandoned-timeout
spring.datasource.tomcat.rollback-on-return
spring.datasource.tomcat.suspect-timeout
spring.datasource.tomcat.test-on-borrow
spring.datasource.tomcat.test-on-connect
spring.datasource.tomcat.test-on-return
spring.datasource.tomcat.test-while-idle
spring.datasource.tomcat.time-between-eviction-runs-millis
spring.datasource.tomcat.url
spring.datasource.tomcat.use-disposable-connection-facade
spring.datasource.tomcat.use-equals
spring.datasource.tomcat.use-lock
spring.datasource.tomcat.use-statement-facade
spring.datasource.tomcat.username
spring.datasource.tomcat.validation-interval
spring.datasource.tomcat.validation-query
spring.datasource.tomcat.validation-query-timeout
spring.datasource.tomcat.validator-class-name
Tomcat datasource specific settings bound to an instance of Tomcat JDBC's DataSource
spring.datasource.typeFully qualified name of the connection pool implementation to use. By default, it is auto-detected from the classpath.
spring.datasource.urlJDBC URL of the database.
spring.datasource.usernameLogin username of the database.
spring.datasource.xa.data-source-class-nameXA datasource fully qualified name.
spring.datasource.xa.properties.*Properties to pass to the XA data source.
spring.elasticsearch.connection-timeoutConnection timeout used when communicating with Elasticsearch.1s
spring.elasticsearch.passwordPassword for authentication with Elasticsearch.
spring.elasticsearch.path-prefixPrefix added to the path of every request sent to Elasticsearch.
spring.elasticsearch.restclient.sniffer.delay-after-failureDelay of a sniff execution scheduled after a failure.1m
spring.elasticsearch.restclient.sniffer.intervalInterval between consecutive ordinary sniff executions.5m
spring.elasticsearch.socket-timeoutSocket timeout used when communicating with Elasticsearch.30s
spring.elasticsearch.urisComma-separated list of the Elasticsearch instances to use.[http://localhost:9200]
spring.elasticsearch.usernameUsername for authentication with Elasticsearch.
spring.elasticsearch.webclient.max-in-memory-sizeLimit on the number of bytes that can be buffered whenever the input stream needs to be aggregated.
spring.h2.console.enabledWhether to enable the console.false
spring.h2.console.pathPath at which the console is available./h2-console
spring.h2.console.settings.traceWhether to enable trace output.false
spring.h2.console.settings.web-admin-passwordPassword to access preferences and tools of H2 Console.
spring.h2.console.settings.web-allow-othersWhether to enable remote access.false
spring.influx.passwordLogin password.
spring.influx.urlURL of the InfluxDB instance to which to connect.
spring.influx.userLogin user.
spring.jdbc.template.fetch-sizeNumber of rows that should be fetched from the database when more rows are needed. Use -1 to use the JDBC driver's default configuration.-1
spring.jdbc.template.max-rowsMaximum number of rows. Use -1 to use the JDBC driver's default configuration.-1
spring.jdbc.template.query-timeoutQuery timeout. Default is to use the JDBC driver's default configuration. If a duration suffix is not specified, seconds will be used.
spring.jooq.sql-dialectSQL dialect to use. Auto-detected by default.
spring.jpa.databaseTarget database to operate on, auto-detected by default. Can be alternatively set using the "databasePlatform" property.
spring.jpa.database-platformName of the target database to operate on, auto-detected by default. Can be alternatively set using the "Database" enum.
spring.jpa.defer-datasource-initializationWhether to defer DataSource initialization until after any EntityManagerFactory beans have been created and initialized.false
spring.jpa.generate-ddlWhether to initialize the schema on startup.false
spring.jpa.hibernate.ddl-autoDDL mode. This is actually a shortcut for the "hibernate.hbm2ddl.auto" property. Defaults to "create-drop" when using an embedded database and no schema manager was detected. Otherwise, defaults to "none".
spring.jpa.hibernate.naming.implicit-strategyFully qualified name of the implicit naming strategy.
spring.jpa.hibernate.naming.physical-strategyFully qualified name of the physical naming strategy.
spring.jpa.hibernate.use-new-id-generator-mappingsWhether to use Hibernate's newer IdentifierGenerator for AUTO, TABLE and SEQUENCE. This is actually a shortcut for the "hibernate.id.new_generator_mappings" property. When not specified will default to "true".
spring.jpa.mapping-resourcesMapping resources (equivalent to "mapping-file" entries in persistence.xml).
spring.jpa.open-in-viewRegister OpenEntityManagerInViewInterceptor. Binds a JPA EntityManager to the thread for the entire processing of the request.true
spring.jpa.properties.*Additional native properties to set on the JPA provider.
spring.jpa.show-sqlWhether to enable logging of SQL statements.false
spring.ldap.anonymous-read-onlyWhether read-only operations should use an anonymous environment. Disabled by default unless a username is set.
spring.ldap.baseBase suffix from which all operations should originate.
spring.ldap.base-environment.*LDAP specification settings.
spring.ldap.embedded.base-dnList of base DNs.
spring.ldap.embedded.credential.passwordEmbedded LDAP password.
spring.ldap.embedded.credential.usernameEmbedded LDAP username.
spring.ldap.embedded.ldifSchema (LDIF) script resource reference.classpath:schema.ldif
spring.ldap.embedded.portEmbedded LDAP port.0
spring.ldap.embedded.validation.enabledWhether to enable LDAP schema validation.true
spring.ldap.embedded.validation.schemaPath to the custom schema.
spring.ldap.passwordLogin password of the server.
spring.ldap.template.ignore-name-not-found-exceptionWhether NameNotFoundException should be ignored in searches via the LdapTemplate.false
spring.ldap.template.ignore-partial-result-exceptionWhether PartialResultException should be ignored in searches via the LdapTemplate.false
spring.ldap.template.ignore-size-limit-exceeded-exceptionWhether SizeLimitExceededException should be ignored in searches via the LdapTemplate.true
spring.ldap.urlsLDAP URLs of the server.
spring.ldap.usernameLogin username of the server.
spring.mongodb.embedded.featuresComma-separated list of features to enable. Uses the defaults of the configured version by default.[sync_delay]
spring.mongodb.embedded.storage.database-dirDirectory used for data storage.
spring.mongodb.embedded.storage.oplog-sizeMaximum size of the oplog.
spring.mongodb.embedded.storage.repl-set-nameName of the replica set.
spring.mongodb.embedded.versionVersion of Mongo to use.
spring.neo4j.authentication.kerberos-ticketKerberos ticket for connecting to the database. Mutual exclusive with a given username.
spring.neo4j.authentication.passwordLogin password of the server.
spring.neo4j.authentication.realmRealm to connect to.
spring.neo4j.authentication.usernameLogin user of the server.
spring.neo4j.connection-timeoutTimeout for borrowing connections from the pool.30s
spring.neo4j.max-transaction-retry-timeMaximum time transactions are allowed to retry.30s
spring.neo4j.pool.connection-acquisition-timeoutAcquisition of new connections will be attempted for at most configured timeout.60s
spring.neo4j.pool.idle-time-before-connection-testPooled connections that have been idle in the pool for longer than this threshold will be tested before they are used again.
spring.neo4j.pool.log-leaked-sessionsWhether to log leaked sessions.false
spring.neo4j.pool.max-connection-lifetimePooled connections older than this threshold will be closed and removed from the pool.1h
spring.neo4j.pool.max-connection-pool-sizeMaximum amount of connections in the connection pool towards a single database.100
spring.neo4j.pool.metrics-enabledWhether to enable metrics.false
spring.neo4j.security.cert-filePath to the file that holds the trusted certificates.
spring.neo4j.security.encryptedWhether the driver should use encrypted traffic.false
spring.neo4j.security.hostname-verification-enabledWhether hostname verification is required.true
spring.neo4j.security.trust-strategyTrust strategy to use.trust-system-ca-signed-certificates
spring.neo4j.uriURI used by the driver.bolt://localhost:7687
spring.r2dbc.generate-unique-nameWhether to generate a random database name. Ignore any configured name when enabled.false
spring.r2dbc.nameDatabase name. Set if no name is specified in the url. Default to "testdb" when using an embedded database.
spring.r2dbc.passwordLogin password of the database. Set if no password is specified in the url.
spring.r2dbc.pool.enabledWhether pooling is enabled. Requires r2dbc-pool.true
spring.r2dbc.pool.initial-sizeInitial connection pool size.10
spring.r2dbc.pool.max-acquire-timeMaximum time to acquire a connection from the pool. By default, wait indefinitely.
spring.r2dbc.pool.max-create-connection-timeMaximum time to wait to create a new connection. By default, wait indefinitely.
spring.r2dbc.pool.max-idle-timeMaximum amount of time that a connection is allowed to sit idle in the pool.30m
spring.r2dbc.pool.max-life-timeMaximum lifetime of a connection in the pool. By default, connections have an infinite lifetime.
spring.r2dbc.pool.max-sizeMaximal connection pool size.10
spring.r2dbc.pool.validation-depthValidation depth.local
spring.r2dbc.pool.validation-queryValidation query.
spring.r2dbc.properties.*Additional R2DBC options.
spring.r2dbc.urlR2DBC URL of the database. database name, username, password and pooling options specified in the url take precedence over individual options.
spring.r2dbc.usernameLogin username of the database. Set if no username is specified in the url.
spring.redis.client-nameClient name to be set on connections with CLIENT SETNAME.
spring.redis.client-typeType of client to use. By default, auto-detected according to the classpath.
spring.redis.cluster.max-redirectsMaximum number of redirects to follow when executing commands across the cluster.
spring.redis.cluster.nodesComma-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.
spring.redis.connect-timeoutConnection timeout.
spring.redis.databaseDatabase index used by the connection factory.0
spring.redis.hostRedis server host.localhost
spring.redis.jedis.pool.enabledWhether to enable the pool. Enabled automatically if "commons-pool2" is available. With Jedis, pooling is implicitly enabled in sentinel mode and this setting only applies to single node setup.
spring.redis.jedis.pool.max-activeMaximum number of connections that can be allocated by the pool at a given time. Use a negative value for no limit.8
spring.redis.jedis.pool.max-idleMaximum number of "idle" connections in the pool. Use a negative value to indicate an unlimited number of idle connections.8
spring.redis.jedis.pool.max-waitMaximum amount of time a connection allocation should block before throwing an exception when the pool is exhausted. Use a negative value to block indefinitely.-1ms
spring.redis.jedis.pool.min-idleTarget for the minimum number of idle connections to maintain in the pool. This setting only has an effect if both it and time between eviction runs are positive.0
spring.redis.jedis.pool.time-between-eviction-runsTime between runs of the idle object evictor thread. When positive, the idle object evictor thread starts, otherwise no idle object eviction is performed.
spring.redis.lettuce.cluster.refresh.adaptiveWhether adaptive topology refreshing using all available refresh triggers should be used.false
spring.redis.lettuce.cluster.refresh.dynamic-refresh-sourcesWhether to discover and query all cluster nodes for obtaining the cluster topology. When set to false, only the initial seed nodes are used as sources for topology discovery.true
spring.redis.lettuce.cluster.refresh.periodCluster topology refresh period.
spring.redis.lettuce.pool.enabledWhether to enable the pool. Enabled automatically if "commons-pool2" is available. With Jedis, pooling is implicitly enabled in sentinel mode and this setting only applies to single node setup.
spring.redis.lettuce.pool.max-activeMaximum number of connections that can be allocated by the pool at a given time. Use a negative value for no limit.8
spring.redis.lettuce.pool.max-idleMaximum number of "idle" connections in the pool. Use a negative value to indicate an unlimited number of idle connections.8
spring.redis.lettuce.pool.max-waitMaximum amount of time a connection allocation should block before throwing an exception when the pool is exhausted. Use a negative value to block indefinitely.-1ms
spring.redis.lettuce.pool.min-idleTarget for the minimum number of idle connections to maintain in the pool. This setting only has an effect if both it and time between eviction runs are positive.0
spring.redis.lettuce.pool.time-between-eviction-runsTime between runs of the idle object evictor thread. When positive, the idle object evictor thread starts, otherwise no idle object eviction is performed.
spring.redis.lettuce.shutdown-timeoutShutdown timeout.100ms
spring.redis.passwordLogin password of the redis server.
spring.redis.portRedis server port.6379
spring.redis.sentinel.masterName of the Redis server.
spring.redis.sentinel.nodesComma-separated list of "host:port" pairs.
spring.redis.sentinel.passwordPassword for authenticating with sentinel(s).
spring.redis.sslWhether to enable SSL support.false
spring.redis.timeoutRead timeout.
spring.redis.urlConnection URL. Overrides host, port, and password. User is ignored. Example: redis://user:password@example.com:6379
spring.redis.usernameLogin username of the redis server.

A.6. Transaction Properties

NameDescriptionDefault Value
spring.jta.atomikos.connectionfactory.borrow-connection-timeoutTimeout, in seconds, for borrowing connections from the pool.30
spring.jta.atomikos.connectionfactory.ignore-session-transacted-flagWhether to ignore the transacted flag when creating session.true
spring.jta.atomikos.connectionfactory.local-transaction-modeWhether local transactions are desired.false
spring.jta.atomikos.connectionfactory.maintenance-intervalTime, in seconds, between runs of the pool's maintenance thread.60
spring.jta.atomikos.connectionfactory.max-idle-timeTime, in seconds, after which connections are cleaned up from the pool.60
spring.jta.atomikos.connectionfactory.max-lifetimeTime, in seconds, that a connection can be pooled for before being destroyed. 0 denotes no limit.0
spring.jta.atomikos.connectionfactory.max-pool-sizeMaximum size of the pool.1
spring.jta.atomikos.connectionfactory.min-pool-sizeMinimum size of the pool.1
spring.jta.atomikos.connectionfactory.reap-timeoutReap timeout, in seconds, for borrowed connections. 0 denotes no limit.0
spring.jta.atomikos.connectionfactory.unique-resource-nameUnique name used to identify the resource during recovery.jmsConnectionFactory
spring.jta.atomikos.connectionfactory.xa-connection-factory-class-nameVendor-specific implementation of XAConnectionFactory.
spring.jta.atomikos.connectionfactory.xa-propertiesVendor-specific XA properties.
spring.jta.atomikos.datasource.borrow-connection-timeoutTimeout, in seconds, for borrowing connections from the pool.30
spring.jta.atomikos.datasource.concurrent-connection-validationWhether to use concurrent connection validation.true
spring.jta.atomikos.datasource.default-isolation-levelDefault isolation level of connections provided by the pool.
spring.jta.atomikos.datasource.login-timeoutTimeout, in seconds, for establishing a database connection.0
spring.jta.atomikos.datasource.maintenance-intervalTime, in seconds, between runs of the pool's maintenance thread.60
spring.jta.atomikos.datasource.max-idle-timeTime, in seconds, after which connections are cleaned up from the pool.60
spring.jta.atomikos.datasource.max-lifetimeTime, in seconds, that a connection can be pooled for before being destroyed. 0 denotes no limit.0
spring.jta.atomikos.datasource.max-pool-sizeMaximum size of the pool.1
spring.jta.atomikos.datasource.min-pool-sizeMinimum size of the pool.1
spring.jta.atomikos.datasource.reap-timeoutReap timeout, in seconds, for borrowed connections. 0 denotes no limit.0
spring.jta.atomikos.datasource.test-querySQL query or statement used to validate a connection before returning it.
spring.jta.atomikos.datasource.unique-resource-nameUnique name used to identify the resource during recovery.dataSource
spring.jta.atomikos.datasource.xa-data-source-class-nameVendor-specific implementation of XAConnectionFactory.
spring.jta.atomikos.datasource.xa-propertiesVendor-specific XA properties.
spring.jta.atomikos.properties.allow-sub-transactionsSpecify whether sub-transactions are allowed.true
spring.jta.atomikos.properties.checkpoint-intervalInterval between checkpoints, expressed as the number of log writes between two checkpoints. A checkpoint reduces the log file size at the expense of adding some overhead in the runtime.500
spring.jta.atomikos.properties.default-jta-timeoutDefault timeout for JTA transactions.10000ms
spring.jta.atomikos.properties.default-max-wait-time-on-shutdownHow long should normal shutdown (no-force) wait for transactions to complete.
spring.jta.atomikos.properties.enable-loggingWhether to enable disk logging.true
spring.jta.atomikos.properties.force-shutdown-on-vm-exitWhether a VM shutdown should trigger forced shutdown of the transaction core.false
spring.jta.atomikos.properties.log-base-dirDirectory in which the log files should be stored. Defaults to the current working directory.
spring.jta.atomikos.properties.log-base-nameTransactions log file base name.tmlog
spring.jta.atomikos.properties.max-activesMaximum number of active transactions.50
spring.jta.atomikos.properties.max-timeoutMaximum timeout that can be allowed for transactions.300000ms
spring.jta.atomikos.properties.recovery.delayDelay between two recovery scans.10000ms
spring.jta.atomikos.properties.recovery.forget-orphaned-log-entries-delayDelay after which recovery can cleanup pending ('orphaned') log entries.86400000ms
spring.jta.atomikos.properties.recovery.max-retriesNumber of retry attempts to commit the transaction before throwing an exception.5
spring.jta.atomikos.properties.recovery.retry-intervalDelay between retry attempts.10000ms
spring.jta.atomikos.properties.serial-jta-transactionsWhether sub-transactions should be joined when possible.true
spring.jta.atomikos.properties.serviceTransaction manager implementation that should be started.
spring.jta.atomikos.properties.threaded-two-phase-commitWhether to use different (and concurrent) threads for two-phase commit on the participating resources.false
spring.jta.atomikos.properties.transaction-manager-unique-nameThe transaction manager's unique name. Defaults to the machine's IP address. If you plan to run more than one transaction manager against one database you must set this property to a unique value.
spring.jta.enabledWhether to enable JTA support.true
spring.jta.log-dirTransaction logs directory.
spring.jta.transaction-manager-idTransaction manager unique identifier.
spring.transaction.default-timeoutDefault transaction timeout. If a duration suffix is not specified, seconds will be used.
spring.transaction.rollback-on-commit-failureWhether to roll back on commit failures.

A.7. Data Migration Properties

NameDescriptionDefault Value
spring.flyway.baseline-descriptionDescription to tag an existing schema with when applying a baseline.<< Flyway Baseline >>
spring.flyway.baseline-migration-prefixFilename prefix for baseline migrations. Requires Flyway Teams.B
spring.flyway.baseline-on-migrateWhether to automatically call baseline when migrating a non-empty schema.false
spring.flyway.baseline-versionVersion to tag an existing schema with when executing baseline.1
spring.flyway.batchWhether to batch SQL statements when executing them. Requires Flyway Teams.
spring.flyway.cherry-pickMigrations that Flyway should consider when migrating or undoing. When empty all available migrations are considered. Requires Flyway Teams.
spring.flyway.clean-disabledWhether to disable cleaning of the database.false
spring.flyway.clean-on-validation-errorWhether to automatically call clean when a validation error occurs.false
spring.flyway.connect-retriesMaximum number of retries when attempting to connect to the database.0
spring.flyway.connect-retries-intervalMaximum time between retries when attempting to connect to the database. If a duration suffix is not specified, seconds will be used.120
spring.flyway.create-schemasWhether Flyway should attempt to create the schemas specified in the schemas property.true
spring.flyway.default-schemaDefault schema name managed by Flyway (case-sensitive).
spring.flyway.detect-encodingWhether to attempt to automatically detect SQL migration file encoding. Requires Flyway Teams.
spring.flyway.driver-class-nameFully qualified name of the JDBC driver. Auto-detected based on the URL by default.
spring.flyway.enabledWhether to enable flyway.true
spring.flyway.encodingEncoding of SQL migrations.UTF-8
spring.flyway.error-overridesRules for the built-in error handling to override specific SQL states and error codes. Requires Flyway Teams.
spring.flyway.fail-on-missing-locationsWhether to fail if a location of migration scripts doesn't exist.false
spring.flyway.groupWhether to group all pending migrations together in the same transaction when applying them.false
spring.flyway.ignore-migration-patternsIgnore migrations that match this comma-separated list of patterns when validating migrations. Requires Flyway Teams.
spring.flyway.init-sqlsSQL statements to execute to initialize a connection immediately after obtaining it.
spring.flyway.installed-byUsername recorded in the schema history table as having applied the migration.
spring.flyway.jdbc-properties.*Properties to pass to the JDBC driver. Requires Flyway Teams.
spring.flyway.kerberos-config-filePath of the Kerberos config file. Requires Flyway Teams.
spring.flyway.license-keyLicence key for Flyway Teams.
spring.flyway.locationsLocations of migrations scripts. Can contain the special "{vendor}" placeholder to use vendor-specific locations.[classpath:db/migration]
spring.flyway.lock-retry-countMaximum number of retries when trying to obtain a lock.50
spring.flyway.mixedWhether to allow mixing transactional and non-transactional statements within the same migration.false
spring.flyway.oracle-kerberos-cache-filePath of the Oracle Kerberos cache file. Requires Flyway Teams.
spring.flyway.oracle-sqlplusWhether to enable support for Oracle SQL*Plus commands. Requires Flyway Teams.
spring.flyway.oracle-sqlplus-warnWhether to issue a warning rather than an error when a not-yet-supported Oracle SQL*Plus statement is encountered. Requires Flyway Teams.
spring.flyway.oracle-wallet-locationLocation of the Oracle Wallet, used to sign in to the database automatically. Requires Flyway Teams.
spring.flyway.out-of-orderWhether to allow migrations to be run out of order.false
spring.flyway.output-query-resultsWhether Flyway should output a table with the results of queries when executing migrations. Requires Flyway Teams.
spring.flyway.passwordLogin password of the database to migrate.
spring.flyway.placeholder-prefixPrefix of placeholders in migration scripts.${
spring.flyway.placeholder-replacementPerform placeholder replacement in migration scripts.true
spring.flyway.placeholder-suffixSuffix of placeholders in migration scripts.}
spring.flyway.placeholders.*Placeholders and their replacements to apply to sql migration scripts.
spring.flyway.repeatable-sql-migration-prefixFile name prefix for repeatable SQL migrations.R
spring.flyway.schemasScheme names managed by Flyway (case-sensitive).
spring.flyway.script-placeholder-prefixPrefix of placeholders in migration scripts.FP__
spring.flyway.script-placeholder-suffixSuffix of placeholders in migration scripts.__
spring.flyway.skip-default-callbacksWhether to skip default callbacks. If true, only custom callbacks are used.false
spring.flyway.skip-default-resolversWhether to skip default resolvers. If true, only custom resolvers are used.false
spring.flyway.skip-executing-migrationsWhether Flyway should skip executing the contents of the migrations and only update the schema history table. Requires Flyway teams.
spring.flyway.sql-migration-prefixFile name prefix for SQL migrations.V
spring.flyway.sql-migration-separatorFile name separator for SQL migrations.__
spring.flyway.sql-migration-suffixesFile name suffix for SQL migrations.[.sql]
spring.flyway.sql-server-kerberos-login-filePath to the SQL Server Kerberos login file. Requires Flyway Teams.
spring.flyway.streamWhether to stream SQL migrations when executing them. Requires Flyway Teams.
spring.flyway.tableName of the schema history table that will be used by Flyway.flyway_schema_history
spring.flyway.tablespaceTablespace in which the schema history table is created. Ignored when using a database that does not support tablespaces. Defaults to the default tablespace of the connection used by Flyway.
spring.flyway.targetTarget version up to which migrations should be considered.
spring.flyway.urlJDBC url of the database to migrate. If not set, the primary configured data source is used.
spring.flyway.userLogin user of the database to migrate.
spring.flyway.validate-migration-namingWhether to validate migrations and callbacks whose scripts do not obey the correct naming convention.false
spring.flyway.validate-on-migrateWhether to automatically call validate when performing a migration.true
spring.liquibase.change-logChange log configuration path.classpath:/db/changelog/db.changelog-master.yaml
spring.liquibase.clear-checksumsWhether to clear all checksums in the current changelog, so they will be recalculated upon the next update.false
spring.liquibase.contextsComma-separated list of runtime contexts to use.
spring.liquibase.database-change-log-lock-tableName of table to use for tracking concurrent Liquibase usage.DATABASECHANGELOGLOCK
spring.liquibase.database-change-log-tableName of table to use for tracking change history.DATABASECHANGELOG
spring.liquibase.default-schemaDefault database schema.
spring.liquibase.driver-class-nameFully qualified name of the JDBC driver. Auto-detected based on the URL by default.
spring.liquibase.drop-firstWhether to first drop the database schema.false
spring.liquibase.enabledWhether to enable Liquibase support.true
spring.liquibase.labelsComma-separated list of runtime labels to use.
spring.liquibase.liquibase-schemaSchema to use for Liquibase objects.
spring.liquibase.liquibase-tablespaceTablespace to use for Liquibase objects.
spring.liquibase.parameters.*Change log parameters.
spring.liquibase.passwordLogin password of the database to migrate.
spring.liquibase.rollback-fileFile to which rollback SQL is written when an update is performed.
spring.liquibase.tagTag name to use when applying database changes. Can also be used with "rollbackFile" to generate a rollback script for all existing changes associated with that tag.
spring.liquibase.test-rollback-on-updateWhether rollback should be tested before update is performed.false
spring.liquibase.urlJDBC URL of the database to migrate. If not set, the primary configured data source is used.
spring.liquibase.userLogin user of the database to migrate.
spring.sql.init.continue-on-errorWhether initialization should continue when an error occurs.false
spring.sql.init.data-locationsLocations of the data (DML) scripts to apply to the database.
spring.sql.init.encodingEncoding of the schema and data scripts.
spring.sql.init.modeMode to apply when determining whether initialization should be performed.embedded
spring.sql.init.passwordPassword of the database to use when applying initialization scripts (if different).
spring.sql.init.platformPlatform to use in the default schema or data script locations, schema-${platform}.sql and data-${platform}.sql.all
spring.sql.init.schema-locationsLocations of the schema (DDL) scripts to apply to the database.
spring.sql.init.separatorStatement separator in the schema and data scripts.;
spring.sql.init.usernameUsername of the database to use when applying initialization scripts (if different).

A.8. Integration Properties

NameDescriptionDefault Value
spring.activemq.broker-urlURL of the ActiveMQ broker. Auto-generated by default.
spring.activemq.close-timeoutTime to wait before considering a close complete.15s
spring.activemq.in-memoryWhether the default broker URL should be in memory. Ignored if an explicit broker has been specified.true
spring.activemq.non-blocking-redeliveryWhether to stop message delivery before re-delivering messages from a rolled back transaction. This implies that message order is not preserved when this is enabled.false
spring.activemq.packages.trust-allWhether to trust all packages.
spring.activemq.packages.trustedComma-separated list of specific packages to trust (when not trusting all packages).
spring.activemq.passwordLogin password of the broker.
spring.activemq.pool.block-if-fullWhether to block when a connection is requested and the pool is full. Set it to false to throw a "JMSException" instead.true
spring.activemq.pool.block-if-full-timeoutBlocking period before throwing an exception if the pool is still full.-1ms
spring.activemq.pool.enabledWhether a JmsPoolConnectionFactory should be created, instead of a regular ConnectionFactory.false
spring.activemq.pool.idle-timeoutConnection idle timeout.30s
spring.activemq.pool.max-connectionsMaximum number of pooled connections.1
spring.activemq.pool.max-sessions-per-connectionMaximum number of pooled sessions per connection in the pool.500
spring.activemq.pool.time-between-expiration-checkTime to sleep between runs of the idle connection eviction thread. When negative, no idle connection eviction thread runs.-1ms
spring.activemq.pool.use-anonymous-producersWhether to use only one anonymous "MessageProducer" instance. Set it to false to create one "MessageProducer" every time one is required.true
spring.activemq.send-timeoutTime to wait on message sends for a response. Set it to 0 to wait forever.0ms
spring.activemq.userLogin user of the broker.
spring.artemis.broker-urlArtemis broker port.tcp://localhost:61616
spring.artemis.embedded.cluster-passwordCluster password. Randomly generated on startup by default.
spring.artemis.embedded.data-directoryJournal file directory. Not necessary if persistence is turned off.
spring.artemis.embedded.enabledWhether to enable embedded mode if the Artemis server APIs are available.true
spring.artemis.embedded.persistentWhether to enable persistent store.false
spring.artemis.embedded.queuesComma-separated list of queues to create on startup.[]
spring.artemis.embedded.server-idServer ID. By default, an auto-incremented counter is used.0
spring.artemis.embedded.topicsComma-separated list of topics to create on startup.[]
spring.artemis.modeArtemis deployment mode, auto-detected by default.
spring.artemis.passwordLogin password of the broker.
spring.artemis.pool.block-if-fullWhether to block when a connection is requested and the pool is full. Set it to false to throw a "JMSException" instead.true
spring.artemis.pool.block-if-full-timeoutBlocking period before throwing an exception if the pool is still full.-1ms
spring.artemis.pool.enabledWhether a JmsPoolConnectionFactory should be created, instead of a regular ConnectionFactory.false
spring.artemis.pool.idle-timeoutConnection idle timeout.30s
spring.artemis.pool.max-connectionsMaximum number of pooled connections.1
spring.artemis.pool.max-sessions-per-connectionMaximum number of pooled sessions per connection in the pool.500
spring.artemis.pool.time-between-expiration-checkTime to sleep between runs of the idle connection eviction thread. When negative, no idle connection eviction thread runs.-1ms
spring.artemis.pool.use-anonymous-producersWhether to use only one anonymous "MessageProducer" instance. Set it to false to create one "MessageProducer" every time one is required.true
spring.artemis.userLogin user of the broker.
spring.batch.jdbc.initialize-schemaDatabase schema initialization mode.embedded
spring.batch.jdbc.platformPlatform to use in initialization scripts if the @@platform@@ placeholder is used. Auto-detected by default.
spring.batch.jdbc.schemaPath to the SQL file to use to initialize the database schema.classpath:org/springframework/batch/core/schema-@@platform@@.sql
spring.batch.jdbc.table-prefixTable prefix for all the batch meta-data tables.
spring.batch.job.enabledExecute all Spring Batch jobs in the context on startup.true
spring.batch.job.namesComma-separated list of job names to execute on startup (for instance, 'job1,job2'). By default, all Jobs found in the context are executed.
spring.hazelcast.configThe location of the configuration file to use to initialize Hazelcast.
spring.integration.channel.auto-createWhether to create input channels if necessary.true
spring.integration.channel.max-broadcast-subscribersDefault number of subscribers allowed on, for example, a 'PublishSubscribeChannel'.
spring.integration.channel.max-unicast-subscribersDefault number of subscribers allowed on, for example, a 'DirectChannel'.
spring.integration.endpoint.no-auto-startupA comma-separated list of endpoint bean names patterns that should not be started automatically during application startup.
spring.integration.endpoint.read-only-headersA comma-separated list of message header names that should not be populated into Message instances during a header copying operation.
spring.integration.endpoint.throw-exception-on-late-replyWhether to throw an exception when a reply is not expected anymore by a gateway.false
spring.integration.error.ignore-failuresWhether to ignore failures for one or more of the handlers of the global 'errorChannel'.true
spring.integration.error.require-subscribersWhether to not silently ignore messages on the global 'errorChannel' when they are no subscribers.true
spring.integration.jdbc.initialize-schemaDatabase schema initialization mode.embedded
spring.integration.jdbc.platformPlatform to use in initialization scripts if the @@platform@@ placeholder is used. Auto-detected by default.
spring.integration.jdbc.schemaPath to the SQL file to use to initialize the database schema.classpath:org/springframework/integration/jdbc/schema-@@platform@@.sql
spring.integration.management.default-logging-enabledWhether Spring Integration components should perform logging in the main message flow. When disabled, such logging will be skipped without checking the logging level. When enabled, such logging is controlled as normal by the logging system's log level configuration.true
spring.integration.poller.cronCron expression for polling. Mutually exclusive with 'fixedDelay' and 'fixedRate'.
spring.integration.poller.fixed-delayPolling delay period. Mutually exclusive with 'cron' and 'fixedRate'.
spring.integration.poller.fixed-ratePolling rate period. Mutually exclusive with 'fixedDelay' and 'cron'.
spring.integration.poller.initial-delayPolling initial delay. Applied for 'fixedDelay' and 'fixedRate'; ignored for 'cron'.
spring.integration.poller.max-messages-per-pollMaximum number of messages to poll per polling cycle.
spring.integration.poller.receive-timeoutHow long to wait for messages on poll.1s
spring.integration.rsocket.client.hostTCP RSocket server host to connect to.
spring.integration.rsocket.client.portTCP RSocket server port to connect to.
spring.integration.rsocket.client.uriWebSocket RSocket server uri to connect to.
spring.integration.rsocket.server.message-mapping-enabledWhether to handle message mapping for RSocket via Spring Integration.false
spring.jms.cache.consumersWhether to cache message consumers.false
spring.jms.cache.enabledWhether to cache sessions.true
spring.jms.cache.producersWhether to cache message producers.true
spring.jms.cache.session-cache-sizeSize of the session cache (per JMS Session type).1
spring.jms.jndi-nameConnection factory JNDI name. When set, takes precedence to others connection factory auto-configurations.
spring.jms.listener.acknowledge-modeAcknowledge mode of the container. By default, the listener is transacted with automatic acknowledgment.
spring.jms.listener.auto-startupStart the container automatically on startup.true
spring.jms.listener.concurrencyMinimum number of concurrent consumers.
spring.jms.listener.max-concurrencyMaximum number of concurrent consumers.
spring.jms.listener.receive-timeoutTimeout to use for receive calls. Use -1 for a no-wait receive or 0 for no timeout at all. The latter is only feasible if not running within a transaction manager and is generally discouraged since it prevents clean shutdown.1s
spring.jms.pub-sub-domainWhether the default destination type is topic.false
spring.jms.template.default-destinationDefault destination to use on send and receive operations that do not have a destination parameter.
spring.jms.template.delivery-delayDelivery delay to use for send calls.
spring.jms.template.delivery-modeDelivery mode. Enables QoS (Quality of Service) when set.
spring.jms.template.priorityPriority of a message when sending. Enables QoS (Quality of Service) when set.
spring.jms.template.qos-enabledWhether to enable explicit QoS (Quality of Service) when sending a message. When enabled, the delivery mode, priority and time-to-live properties will be used when sending a message. QoS is automatically enabled when at least one of those settings is customized.
spring.jms.template.receive-timeoutTimeout to use for receive calls.
spring.jms.template.time-to-liveTime-to-live of a message when sending. Enables QoS (Quality of Service) when set.
spring.kafka.admin.client-idID to pass to the server when making requests. Used for server-side logging.
spring.kafka.admin.fail-fastWhether to fail fast if the broker is not available on startup.false
spring.kafka.admin.properties.*Additional admin-specific properties used to configure the client.
spring.kafka.admin.security.protocolSecurity protocol used to communicate with brokers.
spring.kafka.admin.ssl.key-passwordPassword of the private key in either key store key or key store file.
spring.kafka.admin.ssl.key-store-certificate-chainCertificate chain in PEM format with a list of X.509 certificates.
spring.kafka.admin.ssl.key-store-keyPrivate key in PEM format with PKCS#8 keys.
spring.kafka.admin.ssl.key-store-locationLocation of the key store file.
spring.kafka.admin.ssl.key-store-passwordStore password for the key store file.
spring.kafka.admin.ssl.key-store-typeType of the key store.
spring.kafka.admin.ssl.protocolSSL protocol to use.
spring.kafka.admin.ssl.trust-store-certificatesTrusted certificates in PEM format with X.509 certificates.
spring.kafka.admin.ssl.trust-store-locationLocation of the trust store file.
spring.kafka.admin.ssl.trust-store-passwordStore password for the trust store file.
spring.kafka.admin.ssl.trust-store-typeType of the trust store.
spring.kafka.bootstrap-serversComma-delimited list of host:port pairs to use for establishing the initial connections to the Kafka cluster. Applies to all components unless overridden.
spring.kafka.client-idID to pass to the server when making requests. Used for server-side logging.
spring.kafka.consumer.auto-commit-intervalFrequency with which the consumer offsets are auto-committed to Kafka if 'enable.auto.commit' is set to true.
spring.kafka.consumer.auto-offset-resetWhat to do when there is no initial offset in Kafka or if the current offset no longer exists on the server.
spring.kafka.consumer.bootstrap-serversComma-delimited list of host:port pairs to use for establishing the initial connections to the Kafka cluster. Overrides the global property, for consumers.
spring.kafka.consumer.client-idID to pass to the server when making requests. Used for server-side logging.
spring.kafka.consumer.enable-auto-commitWhether the consumer's offset is periodically committed in the background.
spring.kafka.consumer.fetch-max-waitMaximum amount of time the server blocks before answering the fetch request if there isn't sufficient data to immediately satisfy the requirement given by "fetch-min-size".
spring.kafka.consumer.fetch-min-sizeMinimum amount of data the server should return for a fetch request.
spring.kafka.consumer.group-idUnique string that identifies the consumer group to which this consumer belongs.
spring.kafka.consumer.heartbeat-intervalExpected time between heartbeats to the consumer coordinator.
spring.kafka.consumer.isolation-levelIsolation level for reading messages that have been written transactionally.read-uncommitted
spring.kafka.consumer.key-deserializerDeserializer class for keys.
spring.kafka.consumer.max-poll-recordsMaximum number of records returned in a single call to poll().
spring.kafka.consumer.properties.*Additional consumer-specific properties used to configure the client.
spring.kafka.consumer.security.protocolSecurity protocol used to communicate with brokers.
spring.kafka.consumer.ssl.key-passwordPassword of the private key in either key store key or key store file.
spring.kafka.consumer.ssl.key-store-certificate-chainCertificate chain in PEM format with a list of X.509 certificates.
spring.kafka.consumer.ssl.key-store-keyPrivate key in PEM format with PKCS#8 keys.
spring.kafka.consumer.ssl.key-store-locationLocation of the key store file.
spring.kafka.consumer.ssl.key-store-passwordStore password for the key store file.
spring.kafka.consumer.ssl.key-store-typeType of the key store.
spring.kafka.consumer.ssl.protocolSSL protocol to use.
spring.kafka.consumer.ssl.trust-store-certificatesTrusted certificates in PEM format with X.509 certificates.
spring.kafka.consumer.ssl.trust-store-locationLocation of the trust store file.
spring.kafka.consumer.ssl.trust-store-passwordStore password for the trust store file.
spring.kafka.consumer.ssl.trust-store-typeType of the trust store.
spring.kafka.consumer.value-deserializerDeserializer class for values.
spring.kafka.jaas.control-flagControl flag for login configuration.required
spring.kafka.jaas.enabledWhether to enable JAAS configuration.false
spring.kafka.jaas.login-moduleLogin module.com.sun.security.auth.module.Krb5LoginModule
spring.kafka.jaas.options.*Additional JAAS options.
spring.kafka.listener.ack-countNumber of records between offset commits when ackMode is "COUNT" or "COUNT_TIME".
spring.kafka.listener.ack-modeListener AckMode. See the spring-kafka documentation.
spring.kafka.listener.ack-timeTime between offset commits when ackMode is "TIME" or "COUNT_TIME".
spring.kafka.listener.client-idPrefix for the listener's consumer client.id property.
spring.kafka.listener.concurrencyNumber of threads to run in the listener containers.
spring.kafka.listener.idle-between-pollsSleep interval between Consumer.poll(Duration) calls.0
spring.kafka.listener.idle-event-intervalTime between publishing idle consumer events (no data received).
spring.kafka.listener.log-container-configWhether to log the container configuration during initialization (INFO level).
spring.kafka.listener.missing-topics-fatalWhether the container should fail to start if at least one of the configured topics are not present on the broker.false
spring.kafka.listener.monitor-intervalTime between checks for non-responsive consumers. If a duration suffix is not specified, seconds will be used.
spring.kafka.listener.no-poll-thresholdMultiplier applied to "pollTimeout" to determine if a consumer is non-responsive.
spring.kafka.listener.poll-timeoutTimeout to use when polling the consumer.
spring.kafka.listener.typeListener type.single
spring.kafka.producer.acksNumber of acknowledgments the producer requires the leader to have received before considering a request complete.
spring.kafka.producer.batch-sizeDefault batch size. A small batch size will make batching less common and may reduce throughput (a batch size of zero disables batching entirely).
spring.kafka.producer.bootstrap-serversComma-delimited list of host:port pairs to use for establishing the initial connections to the Kafka cluster. Overrides the global property, for producers.
spring.kafka.producer.buffer-memoryTotal memory size the producer can use to buffer records waiting to be sent to the server.
spring.kafka.producer.client-idID to pass to the server when making requests. Used for server-side logging.
spring.kafka.producer.compression-typeCompression type for all data generated by the producer.
spring.kafka.producer.key-serializerSerializer class for keys.
spring.kafka.producer.properties.*Additional producer-specific properties used to configure the client.
spring.kafka.producer.retriesWhen greater than zero, enables retrying of failed sends.
spring.kafka.producer.security.protocolSecurity protocol used to communicate with brokers.
spring.kafka.producer.ssl.key-passwordPassword of the private key in either key store key or key store file.
spring.kafka.producer.ssl.key-store-certificate-chainCertificate chain in PEM format with a list of X.509 certificates.
spring.kafka.producer.ssl.key-store-keyPrivate key in PEM format with PKCS#8 keys.
spring.kafka.producer.ssl.key-store-locationLocation of the key store file.
spring.kafka.producer.ssl.key-store-passwordStore password for the key store file.
spring.kafka.producer.ssl.key-store-typeType of the key store.
spring.kafka.producer.ssl.protocolSSL protocol to use.
spring.kafka.producer.ssl.trust-store-certificatesTrusted certificates in PEM format with X.509 certificates.
spring.kafka.producer.ssl.trust-store-locationLocation of the trust store file.
spring.kafka.producer.ssl.trust-store-passwordStore password for the trust store file.
spring.kafka.producer.ssl.trust-store-typeType of the trust store.
spring.kafka.producer.transaction-id-prefixWhen non empty, enables transaction support for producer.
spring.kafka.producer.value-serializerSerializer class for values.
spring.kafka.properties.*Additional properties, common to producers and consumers, used to configure the client.
spring.kafka.security.protocolSecurity protocol used to communicate with brokers.
spring.kafka.ssl.key-passwordPassword of the private key in either key store key or key store file.
spring.kafka.ssl.key-store-certificate-chainCertificate chain in PEM format with a list of X.509 certificates.
spring.kafka.ssl.key-store-keyPrivate key in PEM format with PKCS#8 keys.
spring.kafka.ssl.key-store-locationLocation of the key store file.
spring.kafka.ssl.key-store-passwordStore password for the key store file.
spring.kafka.ssl.key-store-typeType of the key store.
spring.kafka.ssl.protocolSSL protocol to use.
spring.kafka.ssl.trust-store-certificatesTrusted certificates in PEM format with X.509 certificates.
spring.kafka.ssl.trust-store-locationLocation of the trust store file.
spring.kafka.ssl.trust-store-passwordStore password for the trust store file.
spring.kafka.ssl.trust-store-typeType of the trust store.
spring.kafka.streams.application-idKafka streams application.id property; default spring.application.name.
spring.kafka.streams.auto-startupWhether to auto-start the streams factory bean.true
spring.kafka.streams.bootstrap-serversComma-delimited list of host:port pairs to use for establishing the initial connections to the Kafka cluster. Overrides the global property, for streams.
spring.kafka.streams.cache-max-size-bufferingMaximum memory size to be used for buffering across all threads.
spring.kafka.streams.cleanup.on-shutdownCleanup the application’s local state directory on shutdown.false
spring.kafka.streams.cleanup.on-startupCleanup the application’s local state directory on startup.false
spring.kafka.streams.client-idID to pass to the server when making requests. Used for server-side logging.
spring.kafka.streams.properties.*Additional Kafka properties used to configure the streams.
spring.kafka.streams.replication-factorThe replication factor for change log topics and repartition topics created by the stream processing application.
spring.kafka.streams.security.protocolSecurity protocol used to communicate with brokers.
spring.kafka.streams.ssl.key-passwordPassword of the private key in either key store key or key store file.
spring.kafka.streams.ssl.key-store-certificate-chainCertificate chain in PEM format with a list of X.509 certificates.
spring.kafka.streams.ssl.key-store-keyPrivate key in PEM format with PKCS#8 keys.
spring.kafka.streams.ssl.key-store-locationLocation of the key store file.
spring.kafka.streams.ssl.key-store-passwordStore password for the key store file.
spring.kafka.streams.ssl.key-store-typeType of the key store.
spring.kafka.streams.ssl.protocolSSL protocol to use.
spring.kafka.streams.ssl.trust-store-certificatesTrusted certificates in PEM format with X.509 certificates.
spring.kafka.streams.ssl.trust-store-locationLocation of the trust store file.
spring.kafka.streams.ssl.trust-store-passwordStore password for the trust store file.
spring.kafka.streams.ssl.trust-store-typeType of the trust store.
spring.kafka.streams.state-dirDirectory location for the state store.
spring.kafka.template.default-topicDefault topic to which messages are sent.
spring.rabbitmq.address-shuffle-modeMode used to shuffle configured addresses.none
spring.rabbitmq.addressesComma-separated list of addresses to which the client should connect. When set, the host and port are ignored.
spring.rabbitmq.cache.channel.checkout-timeoutDuration to wait to obtain a channel if the cache size has been reached. If 0, always create a new channel.
spring.rabbitmq.cache.channel.sizeNumber of channels to retain in the cache. When "check-timeout" > 0, max channels per connection.
spring.rabbitmq.cache.connection.modeConnection factory cache mode.channel
spring.rabbitmq.cache.connection.sizeNumber of connections to cache. Only applies when mode is CONNECTION.
spring.rabbitmq.channel-rpc-timeoutContinuation timeout for RPC calls in channels. Set it to zero to wait forever.10m
spring.rabbitmq.connection-timeoutConnection timeout. Set it to zero to wait forever.
spring.rabbitmq.dynamicWhether to create an AmqpAdmin bean.true
spring.rabbitmq.hostRabbitMQ host. Ignored if an address is set.localhost
spring.rabbitmq.listener.direct.acknowledge-modeAcknowledge mode of container.
spring.rabbitmq.listener.direct.auto-startupWhether to start the container automatically on startup.true
spring.rabbitmq.listener.direct.consumers-per-queueNumber of consumers per queue.
spring.rabbitmq.listener.direct.de-batching-enabledWhether the container should present batched messages as discrete messages or call the listener with the batch.true
spring.rabbitmq.listener.direct.default-requeue-rejectedWhether rejected deliveries are re-queued by default.
spring.rabbitmq.listener.direct.idle-event-intervalHow often idle container events should be published.
spring.rabbitmq.listener.direct.missing-queues-fatalWhether to fail if the queues declared by the container are not available on the broker.false
spring.rabbitmq.listener.direct.prefetchMaximum number of unacknowledged messages that can be outstanding at each consumer.
spring.rabbitmq.listener.direct.retry.enabledWhether publishing retries are enabled.false
spring.rabbitmq.listener.direct.retry.initial-intervalDuration between the first and second attempt to deliver a message.1000ms
spring.rabbitmq.listener.direct.retry.max-attemptsMaximum number of attempts to deliver a message.3
spring.rabbitmq.listener.direct.retry.max-intervalMaximum duration between attempts.10000ms
spring.rabbitmq.listener.direct.retry.multiplierMultiplier to apply to the previous retry interval.1
spring.rabbitmq.listener.direct.retry.statelessWhether retries are stateless or stateful.true
spring.rabbitmq.listener.simple.acknowledge-modeAcknowledge mode of container.
spring.rabbitmq.listener.simple.auto-startupWhether to start the container automatically on startup.true
spring.rabbitmq.listener.simple.batch-sizeBatch size, expressed as the number of physical messages, to be used by the container.
spring.rabbitmq.listener.simple.concurrencyMinimum number of listener invoker threads.
spring.rabbitmq.listener.simple.consumer-batch-enabledWhether the container creates a batch of messages based on the 'receive-timeout' and 'batch-size'. Coerces 'de-batching-enabled' to true to include the contents of a producer created batch in the batch as discrete records.false
spring.rabbitmq.listener.simple.de-batching-enabledWhether the container should present batched messages as discrete messages or call the listener with the batch.true
spring.rabbitmq.listener.simple.default-requeue-rejectedWhether rejected deliveries are re-queued by default.
spring.rabbitmq.listener.simple.idle-event-intervalHow often idle container events should be published.
spring.rabbitmq.listener.simple.max-concurrencyMaximum number of listener invoker threads.
spring.rabbitmq.listener.simple.missing-queues-fatalWhether to fail if the queues declared by the container are not available on the broker and/or whether to stop the container if one or more queues are deleted at runtime.true
spring.rabbitmq.listener.simple.prefetchMaximum number of unacknowledged messages that can be outstanding at each consumer.
spring.rabbitmq.listener.simple.retry.enabledWhether publishing retries are enabled.false
spring.rabbitmq.listener.simple.retry.initial-intervalDuration between the first and second attempt to deliver a message.1000ms
spring.rabbitmq.listener.simple.retry.max-attemptsMaximum number of attempts to deliver a message.3
spring.rabbitmq.listener.simple.retry.max-intervalMaximum duration between attempts.10000ms
spring.rabbitmq.listener.simple.retry.multiplierMultiplier to apply to the previous retry interval.1
spring.rabbitmq.listener.simple.retry.statelessWhether retries are stateless or stateful.true
spring.rabbitmq.listener.stream.auto-startupWhether to start the container automatically on startup.true
spring.rabbitmq.listener.stream.native-listenerWhether the container will support listeners that consume native stream messages instead of Spring AMQP messages.false
spring.rabbitmq.listener.typeListener container type.simple
spring.rabbitmq.passwordLogin to authenticate against the broker.guest
spring.rabbitmq.portRabbitMQ port. Ignored if an address is set. Default to 5672, or 5671 if SSL is enabled.
spring.rabbitmq.publisher-confirm-typeType of publisher confirms to use.
spring.rabbitmq.publisher-returnsWhether to enable publisher returns.false
spring.rabbitmq.requested-channel-maxNumber of channels per connection requested by the client. Use 0 for unlimited.2047
spring.rabbitmq.requested-heartbeatRequested heartbeat timeout; zero for none. If a duration suffix is not specified, seconds will be used.
spring.rabbitmq.ssl.algorithmSSL algorithm to use. By default, configured by the Rabbit client library.
spring.rabbitmq.ssl.enabledWhether to enable SSL support. Determined automatically if an address is provided with the protocol (amqp:// vs. amqps://).
spring.rabbitmq.ssl.key-storePath to the key store that holds the SSL certificate.
spring.rabbitmq.ssl.key-store-algorithmKey store algorithm.SunX509
spring.rabbitmq.ssl.key-store-passwordPassword used to access the key store.
spring.rabbitmq.ssl.key-store-typeKey store type.PKCS12
spring.rabbitmq.ssl.trust-storeTrust store that holds SSL certificates.
spring.rabbitmq.ssl.trust-store-algorithmTrust store algorithm.SunX509
spring.rabbitmq.ssl.trust-store-passwordPassword used to access the trust store.
spring.rabbitmq.ssl.trust-store-typeTrust store type.JKS
spring.rabbitmq.ssl.validate-server-certificateWhether to enable server side certificate validation.true
spring.rabbitmq.ssl.verify-hostnameWhether to enable hostname verification.true
spring.rabbitmq.stream.hostHost of a RabbitMQ instance with the Stream plugin enabled.localhost
spring.rabbitmq.stream.passwordLogin password to authenticate to the broker. When not set spring.rabbitmq.password is used.
spring.rabbitmq.stream.portStream port of a RabbitMQ instance with the Stream plugin enabled.
spring.rabbitmq.stream.usernameLogin user to authenticate to the broker. When not set, spring.rabbitmq.username is used.
spring.rabbitmq.template.default-receive-queueName of the default queue to receive messages from when none is specified explicitly.
spring.rabbitmq.template.exchangeName of the default exchange to use for send operations.
spring.rabbitmq.template.mandatoryWhether to enable mandatory messages.
spring.rabbitmq.template.receive-timeoutTimeout for receive() operations.
spring.rabbitmq.template.reply-timeoutTimeout for sendAndReceive() operations.
spring.rabbitmq.template.retry.enabledWhether publishing retries are enabled.false
spring.rabbitmq.template.retry.initial-intervalDuration between the first and second attempt to deliver a message.1000ms
spring.rabbitmq.template.retry.max-attemptsMaximum number of attempts to deliver a message.3
spring.rabbitmq.template.retry.max-intervalMaximum duration between attempts.10000ms
spring.rabbitmq.template.retry.multiplierMultiplier to apply to the previous retry interval.1
spring.rabbitmq.template.routing-keyValue of a default routing key to use for send operations.
spring.rabbitmq.usernameLogin user to authenticate to the broker.guest
spring.rabbitmq.virtual-hostVirtual host to use when connecting to the broker.
spring.webservices.pathPath that serves as the base URI for the services./services
spring.webservices.servlet.init.*Servlet init parameters to pass to Spring Web Services.
spring.webservices.servlet.load-on-startupLoad on startup priority of the Spring Web Services servlet.-1
spring.webservices.wsdl-locationsComma-separated list of locations of WSDLs and accompanying XSDs to be exposed as beans.

A.9. Web Properties

NameDescriptionDefault Value
spring.hateoas.use-hal-as-default-json-media-typeWhether application/hal+json responses should be sent to requests that accept application/json.true
spring.jersey.application-pathPath that serves as the base URI for the application. If specified, overrides the value of "@ApplicationPath".
spring.jersey.filter.orderJersey filter chain order.0
spring.jersey.init.*Init parameters to pass to Jersey through the servlet or filter.
spring.jersey.servlet.load-on-startupLoad on startup priority of the Jersey servlet.-1
spring.jersey.typeJersey integration type.servlet
spring.mvc.async.request-timeoutAmount of time before asynchronous request handling times out. If this value is not set, the default timeout of the underlying implementation is used.
spring.mvc.contentnegotiation.favor-parameterWhether a request parameter ("format" by default) should be used to determine the requested media type.false
spring.mvc.contentnegotiation.media-types.*Map file extensions to media types for content negotiation. For instance, yml to text/yaml.
spring.mvc.contentnegotiation.parameter-nameQuery parameter name to use when "favor-parameter" is enabled.
spring.mvc.converters.preferred-json-mapperPreferred JSON mapper to use for HTTP message conversion. By default, auto-detected according to the environment.
spring.mvc.dispatch-options-requestWhether to dispatch OPTIONS requests to the FrameworkServlet doService method.true
spring.mvc.dispatch-trace-requestWhether to dispatch TRACE requests to the FrameworkServlet doService method.false
spring.mvc.format.dateDate format to use, for example 'dd/MM/yyyy'.
spring.mvc.format.date-timeDate-time format to use, for example 'yyyy-MM-dd HH:mm:ss'.
spring.mvc.format.timeTime format to use, for example 'HH:mm:ss'.
spring.mvc.formcontent.filter.enabledWhether to enable Spring's FormContentFilter.true
spring.mvc.hiddenmethod.filter.enabledWhether to enable Spring's HiddenHttpMethodFilter.false
spring.mvc.ignore-default-model-on-redirectWhether the content of the "default" model should be ignored during redirect scenarios.true
spring.mvc.log-request-detailsWhether logging of (potentially sensitive) request details at DEBUG and TRACE level is allowed.false
spring.mvc.log-resolved-exceptionWhether to enable warn logging of exceptions resolved by a "HandlerExceptionResolver", except for "DefaultHandlerExceptionResolver".false
spring.mvc.message-codes-resolver-formatFormatting strategy for message codes. For instance, 'PREFIX_ERROR_CODE'.
spring.mvc.pathmatch.matching-strategyChoice of strategy for matching request paths against registered mappings.path-pattern-parser
spring.mvc.publish-request-handled-eventsWhether to publish a ServletRequestHandledEvent at the end of each request.true
spring.mvc.servlet.load-on-startupLoad on startup priority of the dispatcher servlet.-1
spring.mvc.servlet.pathPath of the dispatcher servlet. Setting a custom value for this property is not compatible with the PathPatternParser matching strategy./
spring.mvc.static-path-patternPath pattern used for static resources./**
spring.mvc.throw-exception-if-no-handler-foundWhether a "NoHandlerFoundException" should be thrown if no Handler was found to process a request.false
spring.mvc.view.prefixSpring MVC view prefix.
spring.mvc.view.suffixSpring MVC view suffix.
spring.netty.leak-detectionLevel of leak detection for reference-counted buffers.simple
spring.servlet.multipart.enabledWhether to enable support of multipart uploads.true
spring.servlet.multipart.file-size-thresholdThreshold after which files are written to disk.0B
spring.servlet.multipart.locationIntermediate location of uploaded files.
spring.servlet.multipart.max-file-sizeMax file size.1MB
spring.servlet.multipart.max-request-sizeMax request size.10MB
spring.servlet.multipart.resolve-lazilyWhether to resolve the multipart request lazily at the time of file or parameter access.false
spring.session.hazelcast.flush-modeSessions flush mode. Determines when session changes are written to the session store.on-save
spring.session.hazelcast.map-nameName of the map used to store sessions.spring:session:sessions
spring.session.hazelcast.save-modeSessions save mode. Determines how session changes are tracked and saved to the session store.on-set-attribute
spring.session.jdbc.cleanup-cronCron expression for expired session cleanup job.0 * * * * *
spring.session.jdbc.flush-modeSessions flush mode. Determines when session changes are written to the session store.on-save
spring.session.jdbc.initialize-schemaDatabase schema initialization mode.embedded
spring.session.jdbc.platformPlatform to use in initialization scripts if the @@platform@@ placeholder is used. Auto-detected by default.
spring.session.jdbc.save-modeSessions save mode. Determines how session changes are tracked and saved to the session store.on-set-attribute
spring.session.jdbc.schemaPath to the SQL file to use to initialize the database schema.classpath:org/springframework/session/jdbc/schema-@@platform@@.sql
spring.session.jdbc.table-nameName of the database table used to store sessions.SPRING_SESSION
spring.session.mongodb.collection-nameCollection name used to store sessions.sessions
spring.session.redis.cleanup-cronCron expression for expired session cleanup job.0 * * * * *
spring.session.redis.configure-actionThe configure action to apply when no user defined ConfigureRedisAction bean is present.notify-keyspace-events
spring.session.redis.flush-modeSessions flush mode. Determines when session changes are written to the session store.on-save
spring.session.redis.namespaceNamespace for keys used to store sessions.spring:session
spring.session.redis.save-modeSessions save mode. Determines how session changes are tracked and saved to the session store.on-set-attribute
spring.session.servlet.filter-dispatcher-typesSession repository filter dispatcher types.[async, error, request]
spring.session.servlet.filter-orderSession repository filter order.
spring.session.store-typeSession store type.
spring.session.timeoutSession timeout. If a duration suffix is not specified, seconds will be used.
spring.web.localeLocale to use. By default, this locale is overridden by the "Accept-Language" header.
spring.web.locale-resolverDefine how the locale should be resolved.accept-header
spring.web.resources.add-mappingsWhether to enable default resource handling.true
spring.web.resources.cache.cachecontrol.cache-privateIndicate that the response message is intended for a single user and must not be stored by a shared cache.
spring.web.resources.cache.cachecontrol.cache-publicIndicate that any cache may store the response.
spring.web.resources.cache.cachecontrol.max-ageMaximum time the response should be cached, in seconds if no duration suffix is not specified.
spring.web.resources.cache.cachecontrol.must-revalidateIndicate that once it has become stale, a cache must not use the response without re-validating it with the server.
spring.web.resources.cache.cachecontrol.no-cacheIndicate that the cached response can be reused only if re-validated with the server.
spring.web.resources.cache.cachecontrol.no-storeIndicate to not cache the response in any case.
spring.web.resources.cache.cachecontrol.no-transformIndicate intermediaries (caches and others) that they should not transform the response content.
spring.web.resources.cache.cachecontrol.proxy-revalidateSame meaning as the "must-revalidate" directive, except that it does not apply to private caches.
spring.web.resources.cache.cachecontrol.s-max-ageMaximum time the response should be cached by shared caches, in seconds if no duration suffix is not specified.
spring.web.resources.cache.cachecontrol.stale-if-errorMaximum time the response may be used when errors are encountered, in seconds if no duration suffix is not specified.
spring.web.resources.cache.cachecontrol.stale-while-revalidateMaximum time the response can be served after it becomes stale, in seconds if no duration suffix is not specified.
spring.web.resources.cache.periodCache period for the resources served by the resource handler. If a duration suffix is not specified, seconds will be used. Can be overridden by the 'spring.web.resources.cache.cachecontrol' properties.
spring.web.resources.cache.use-last-modifiedWhether we should use the "lastModified" metadata of the files in HTTP caching headers.true
spring.web.resources.chain.cacheWhether to enable caching in the Resource chain.true
spring.web.resources.chain.compressedWhether to enable resolution of already compressed resources (gzip, brotli). Checks for a resource name with the '.gz' or '.br' file extensions.false
spring.web.resources.chain.enabledWhether to enable the Spring Resource Handling chain. By default, disabled unless at least one strategy has been enabled.
spring.web.resources.chain.strategy.content.enabledWhether to enable the content Version Strategy.false
spring.web.resources.chain.strategy.content.pathsComma-separated list of patterns to apply to the content Version Strategy.[/**]
spring.web.resources.chain.strategy.fixed.enabledWhether to enable the fixed Version Strategy.false
spring.web.resources.chain.strategy.fixed.pathsComma-separated list of patterns to apply to the fixed Version Strategy.[/**]
spring.web.resources.chain.strategy.fixed.versionVersion string to use for the fixed Version Strategy.
spring.web.resources.static-locationsLocations of static resources. Defaults to classpath:[/META-INF/resources/, /resources/, /static/, /public/].[classpath:/META-INF/resources/, classpath:/resources/, classpath:/static/, classpath:/public/]
spring.webflux.base-pathBase path for all web handlers.
spring.webflux.format.dateDate format to use, for example 'dd/MM/yyyy'.
spring.webflux.format.date-timeDate-time format to use, for example 'yyyy-MM-dd HH:mm:ss'.
spring.webflux.format.timeTime format to use, for example 'HH:mm:ss'.
spring.webflux.hiddenmethod.filter.enabledWhether to enable Spring's HiddenHttpMethodFilter.false
spring.webflux.multipart.file-storage-directoryDirectory used to store file parts larger than 'maxInMemorySize'. Default is a directory named 'spring-multipart' created under the system temporary directory. Ignored when streaming is enabled.
spring.webflux.multipart.headers-charsetCharacter set used to decode headers.UTF-8
spring.webflux.multipart.max-disk-usage-per-partMaximum amount of disk space allowed per part. Default is -1 which enforces no limits. Ignored when streaming is enabled.-1B
spring.webflux.multipart.max-headers-sizeMaximum amount of memory allowed per headers section of each part. Set to -1 to enforce no limits.10KB
spring.webflux.multipart.max-in-memory-sizeMaximum amount of memory allowed per part before it's written to disk. Set to -1 to store all contents in memory. Ignored when streaming is enabled.256KB
spring.webflux.multipart.max-partsMaximum number of parts allowed in a given multipart request. Default is -1 which enforces no limits.-1
spring.webflux.multipart.streamingWhether to stream directly from the parsed input buffer stream without storing in memory nor file. Default is non-streaming.false
spring.webflux.static-path-patternPath pattern used for static resources./**

A.10. Templating Properties

NameDescriptionDefault Value
spring.freemarker.allow-request-overrideWhether HttpServletRequest attributes are allowed to override (hide) controller generated model attributes of the same name.false
spring.freemarker.allow-session-overrideWhether HttpSession attributes are allowed to override (hide) controller generated model attributes of the same name.false
spring.freemarker.cacheWhether to enable template caching.false
spring.freemarker.charsetTemplate encoding.UTF-8
spring.freemarker.check-template-locationWhether to check that the templates location exists.true
spring.freemarker.content-typeContent-Type value.text/html
spring.freemarker.enabledWhether to enable MVC view resolution for this technology.true
spring.freemarker.expose-request-attributesWhether all request attributes should be added to the model prior to merging with the template.false
spring.freemarker.expose-session-attributesWhether all HttpSession attributes should be added to the model prior to merging with the template.false
spring.freemarker.expose-spring-macro-helpersWhether to expose a RequestContext for use by Spring's macro library, under the name "springMacroRequestContext".true
spring.freemarker.prefer-file-system-accessWhether to prefer file system access for template loading to enable hot detection of template changes. When a template path is detected as a directory, templates are loaded from the directory only and other matching classpath locations will not be considered.false
spring.freemarker.prefixPrefix that gets prepended to view names when building a URL.
spring.freemarker.request-context-attributeName of the RequestContext attribute for all views.
spring.freemarker.settings.*Well-known FreeMarker keys which are passed to FreeMarker's Configuration.
spring.freemarker.suffixSuffix that gets appended to view names when building a URL..ftlh
spring.freemarker.template-loader-pathComma-separated list of template paths.[classpath:/templates/]
spring.freemarker.view-namesView names that can be resolved.
spring.groovy.template.allow-request-overrideWhether HttpServletRequest attributes are allowed to override (hide) controller generated model attributes of the same name.false
spring.groovy.template.allow-session-overrideWhether HttpSession attributes are allowed to override (hide) controller generated model attributes of the same name.false
spring.groovy.template.cacheWhether to enable template caching.false
spring.groovy.template.charsetTemplate encoding.UTF-8
spring.groovy.template.check-template-locationWhether to check that the templates location exists.true
spring.groovy.template.configuration.auto-escape
spring.groovy.template.configuration.auto-indent
spring.groovy.template.configuration.auto-indent-string
spring.groovy.template.configuration.auto-new-line
spring.groovy.template.configuration.base-template-class
spring.groovy.template.configuration.cache-templates
spring.groovy.template.configuration.declaration-encoding
spring.groovy.template.configuration.expand-empty-elements
spring.groovy.template.configuration.locale
spring.groovy.template.configuration.new-line-string
spring.groovy.template.configuration.resource-loader-path
spring.groovy.template.configuration.use-double-quotes
See GroovyMarkupConfigurer
spring.groovy.template.content-typeContent-Type value.text/html
spring.groovy.template.enabledWhether to enable MVC view resolution for this technology.true
spring.groovy.template.expose-request-attributesWhether all request attributes should be added to the model prior to merging with the template.false
spring.groovy.template.expose-session-attributesWhether all HttpSession attributes should be added to the model prior to merging with the template.false
spring.groovy.template.expose-spring-macro-helpersWhether to expose a RequestContext for use by Spring's macro library, under the name "springMacroRequestContext".true
spring.groovy.template.prefixPrefix that gets prepended to view names when building a URL.
spring.groovy.template.request-context-attributeName of the RequestContext attribute for all views.
spring.groovy.template.resource-loader-pathTemplate path.classpath:/templates/
spring.groovy.template.suffixSuffix that gets appended to view names when building a URL..tpl
spring.groovy.template.view-namesView names that can be resolved.
spring.mustache.allow-request-overrideWhether HttpServletRequest attributes are allowed to override (hide) controller generated model attributes of the same name.false
spring.mustache.allow-session-overrideWhether HttpSession attributes are allowed to override (hide) controller generated model attributes of the same name.false
spring.mustache.cacheWhether to enable template caching.false
spring.mustache.charsetTemplate encoding.UTF-8
spring.mustache.check-template-locationWhether to check that the templates location exists.true
spring.mustache.content-typeContent-Type value.text/html
spring.mustache.enabledWhether to enable MVC view resolution for this technology.true
spring.mustache.expose-request-attributesWhether all request attributes should be added to the model prior to merging with the template.false
spring.mustache.expose-session-attributesWhether all HttpSession attributes should be added to the model prior to merging with the template.false
spring.mustache.expose-spring-macro-helpersWhether to expose a RequestContext for use by Spring's macro library, under the name "springMacroRequestContext".true
spring.mustache.prefixPrefix to apply to template names.classpath:/templates/
spring.mustache.request-context-attributeName of the RequestContext attribute for all views.
spring.mustache.suffixSuffix to apply to template names..mustache
spring.mustache.view-namesView names that can be resolved.
spring.thymeleaf.cacheWhether to enable template caching.true
spring.thymeleaf.check-templateWhether to check that the template exists before rendering it.true
spring.thymeleaf.check-template-locationWhether to check that the templates location exists.true
spring.thymeleaf.enable-spring-el-compilerEnable the SpringEL compiler in SpringEL expressions.false
spring.thymeleaf.enabledWhether to enable Thymeleaf view resolution for Web frameworks.true
spring.thymeleaf.encodingTemplate files encoding.UTF-8
spring.thymeleaf.excluded-view-namesComma-separated list of view names (patterns allowed) that should be excluded from resolution.
spring.thymeleaf.modeTemplate mode to be applied to templates. See also Thymeleaf's TemplateMode enum.HTML
spring.thymeleaf.prefixPrefix that gets prepended to view names when building a URL.classpath:/templates/
spring.thymeleaf.reactive.chunked-mode-view-namesComma-separated list of view names (patterns allowed) that should be the only ones executed in CHUNKED mode when a max chunk size is set.
spring.thymeleaf.reactive.full-mode-view-namesComma-separated list of view names (patterns allowed) that should be executed in FULL mode even if a max chunk size is set.
spring.thymeleaf.reactive.max-chunk-sizeMaximum size of data buffers used for writing to the response. Templates will execute in CHUNKED mode by default if this is set.0B
spring.thymeleaf.reactive.media-typesMedia types supported by the view technology.[text/html, application/xhtml+xml, application/xml, text/xml, application/rss+xml, application/atom+xml, application/javascript, application/ecmascript, text/javascript, text/ecmascript, application/json, text/css, text/plain, text/event-stream]
spring.thymeleaf.render-hidden-markers-before-checkboxesWhether hidden form inputs acting as markers for checkboxes should be rendered before the checkbox element itself.false
spring.thymeleaf.servlet.content-typeContent-Type value written to HTTP responses.text/html
spring.thymeleaf.servlet.produce-partial-output-while-processingWhether Thymeleaf should start writing partial output as soon as possible or buffer until template processing is finished.true
spring.thymeleaf.suffixSuffix that gets appended to view names when building a URL..html
spring.thymeleaf.template-resolver-orderOrder of the template resolver in the chain. By default, the template resolver is first in the chain. Order start at 1 and should only be set if you have defined additional "TemplateResolver" beans.
spring.thymeleaf.view-namesComma-separated list of view names (patterns allowed) that can be resolved.

A.11. Server Properties

NameDescriptionDefault Value
server.addressNetwork address to which the server should bind.
server.compression.enabledWhether response compression is enabled.false
server.compression.excluded-user-agentsComma-separated list of user agents for which responses should not be compressed.
server.compression.mime-typesComma-separated list of MIME types that should be compressed.[text/html, text/xml, text/plain, text/css, text/javascript, application/javascript, application/json, application/xml]
server.compression.min-response-sizeMinimum "Content-Length" value that is required for compression to be performed.2KB
server.error.include-binding-errorsWhen to include "errors" attribute.never
server.error.include-exceptionInclude the "exception" attribute.false
server.error.include-messageWhen to include "message" attribute.never
server.error.include-stacktraceWhen to include the "trace" attribute.never
server.error.pathPath of the error controller./error
server.error.whitelabel.enabledWhether to enable the default error page displayed in browsers in case of a server error.true
server.forward-headers-strategyStrategy for handling X-Forwarded-* headers.
server.http2.enabledWhether to enable HTTP/2 support, if the current environment supports it.false
server.jetty.accesslog.appendAppend to log.false
server.jetty.accesslog.custom-formatCustom log format, see org.eclipse.jetty.server.CustomRequestLog. If defined, overrides the "format" configuration key.
server.jetty.accesslog.enabledEnable access log.false
server.jetty.accesslog.file-date-formatDate format to place in log file name.
server.jetty.accesslog.filenameLog filename. If not specified, logs redirect to "System.err".
server.jetty.accesslog.formatLog format.ncsa
server.jetty.accesslog.ignore-pathsRequest paths that should not be logged.
server.jetty.accesslog.retention-periodNumber of days before rotated log files are deleted.31
server.jetty.connection-idle-timeoutTime that the connection can be idle before it is closed.
server.jetty.max-http-form-post-sizeMaximum size of the form content in any HTTP post request.200000B
server.jetty.threads.acceptorsNumber of acceptor threads to use. When the value is -1, the default, the number of acceptors is derived from the operating environment.-1
server.jetty.threads.idle-timeoutMaximum thread idle time.60000ms
server.jetty.threads.maxMaximum number of threads.200
server.jetty.threads.max-queue-capacityMaximum capacity of the thread pool's backing queue. A default is computed based on the threading configuration.
server.jetty.threads.minMinimum number of threads.8
server.jetty.threads.selectorsNumber of selector threads to use. When the value is -1, the default, the number of selectors is derived from the operating environment.-1
server.max-http-header-sizeMaximum size of the HTTP message header.8KB
server.netty.connection-timeoutConnection timeout of the Netty channel.
server.netty.h2c-max-content-lengthMaximum content length of an H2C upgrade request.0B
server.netty.idle-timeoutIdle timeout of the Netty channel. When not specified, an infinite timeout is used.
server.netty.initial-buffer-sizeInitial buffer size for HTTP request decoding.128B
server.netty.max-chunk-sizeMaximum chunk size that can be decoded for an HTTP request.8KB
server.netty.max-initial-line-lengthMaximum length that can be decoded for an HTTP request's initial line.4KB
server.netty.validate-headersWhether to validate headers when decoding requests.true
server.portServer HTTP port.8080
server.reactive.session.cookie.domainDomain for the cookie.
server.reactive.session.cookie.http-onlyWhether to use "HttpOnly" cookies for the cookie.
server.reactive.session.cookie.max-ageMaximum age of the cookie. If a duration suffix is not specified, seconds will be used. A positive value indicates when the cookie expires relative to the current time. A value of 0 means the cookie should expire immediately. A negative value means no "Max-Age".
server.reactive.session.cookie.nameName for the cookie.
server.reactive.session.cookie.pathPath of the cookie.
server.reactive.session.cookie.same-siteSameSite setting for the cookie.
server.reactive.session.cookie.secureWhether to always mark the cookie as secure.
server.reactive.session.timeoutSession timeout. If a duration suffix is not specified, seconds will be used.30m
server.server-headerValue to use for the Server response header (if empty, no header is sent).
server.servlet.application-display-nameDisplay name of the application.application
server.servlet.context-parameters.*Servlet context init parameters.
server.servlet.context-pathContext path of the application.
server.servlet.encoding.charsetCharset of HTTP requests and responses. Added to the "Content-Type" header if not set explicitly.UTF-8
server.servlet.encoding.enabledWhether to enable http encoding support.true
server.servlet.encoding.forceWhether to force the encoding to the configured charset on HTTP requests and responses.
server.servlet.encoding.force-requestWhether to force the encoding to the configured charset on HTTP requests. Defaults to true when "force" has not been specified.
server.servlet.encoding.force-responseWhether to force the encoding to the configured charset on HTTP responses.
server.servlet.encoding.mapping.*Mapping of locale to charset for response encoding.
server.servlet.jsp.class-nameClass name of the servlet to use for JSPs. If registered is true and this class * is on the classpath then it will be registered.org.apache.jasper.servlet.JspServlet
server.servlet.jsp.init-parameters.*Init parameters used to configure the JSP servlet.
server.servlet.jsp.registeredWhether the JSP servlet is registered.true
server.servlet.register-default-servletWhether to register the default Servlet with the container.false
server.servlet.session.cookie.commentComment for the cookie.
server.servlet.session.cookie.domainDomain for the cookie.
server.servlet.session.cookie.http-onlyWhether to use "HttpOnly" cookies for the cookie.
server.servlet.session.cookie.max-ageMaximum age of the cookie. If a duration suffix is not specified, seconds will be used. A positive value indicates when the cookie expires relative to the current time. A value of 0 means the cookie should expire immediately. A negative value means no "Max-Age".
server.servlet.session.cookie.nameName of the cookie.
server.servlet.session.cookie.pathPath of the cookie.
server.servlet.session.cookie.same-siteSameSite setting for the cookie.
server.servlet.session.cookie.secureWhether to always mark the cookie as secure.
server.servlet.session.persistentWhether to persist session data between restarts.false
server.servlet.session.store-dirDirectory used to store session data.
server.servlet.session.timeoutSession timeout. If a duration suffix is not specified, seconds will be used.30m
server.servlet.session.tracking-modesSession tracking modes.
server.shutdownType of shutdown that the server will support.immediate
server.ssl.ciphersSupported SSL ciphers.
server.ssl.client-authClient authentication mode. Requires a trust store.
server.ssl.enabledWhether to enable SSL support.true
server.ssl.enabled-protocolsEnabled SSL protocols.
server.ssl.key-aliasAlias that identifies the key in the key store.
server.ssl.key-passwordPassword used to access the key in the key store.
server.ssl.key-storePath to the key store that holds the SSL certificate (typically a jks file).
server.ssl.key-store-passwordPassword used to access the key store.
server.ssl.key-store-providerProvider for the key store.
server.ssl.key-store-typeType of the key store.
server.ssl.protocolSSL protocol to use.TLS
server.ssl.trust-storeTrust store that holds SSL certificates.
server.ssl.trust-store-passwordPassword used to access the trust store.
server.ssl.trust-store-providerProvider for the trust store.
server.ssl.trust-store-typeType of the trust store.
server.tomcat.accept-countMaximum queue length for incoming connection requests when all possible request processing threads are in use.100
server.tomcat.accesslog.bufferedWhether to buffer output such that it is flushed only periodically.true
server.tomcat.accesslog.check-existsWhether to check for log file existence so it can be recreated it if an external process has renamed it.false
server.tomcat.accesslog.condition-ifWhether logging of the request will only be enabled if "ServletRequest.getAttribute(conditionIf)" does not yield null.
server.tomcat.accesslog.condition-unlessWhether logging of the request will only be enabled if "ServletRequest.getAttribute(conditionUnless)" yield null.
server.tomcat.accesslog.directoryDirectory in which log files are created. Can be absolute or relative to the Tomcat base dir.logs
server.tomcat.accesslog.enabledEnable access log.false
server.tomcat.accesslog.encodingCharacter set used by the log file. Default to the system default character set.
server.tomcat.accesslog.file-date-formatDate format to place in the log file name..yyyy-MM-dd
server.tomcat.accesslog.ipv6-canonicalWhether to use IPv6 canonical representation format as defined by RFC 5952.false
server.tomcat.accesslog.localeLocale used to format timestamps in log entries and in log file name suffix. Default to the default locale of the Java process.
server.tomcat.accesslog.max-daysNumber of days to retain the access log files before they are removed.-1
server.tomcat.accesslog.patternFormat pattern for access logs.common
server.tomcat.accesslog.prefixLog file name prefix.access_log
server.tomcat.accesslog.rename-on-rotateWhether to defer inclusion of the date stamp in the file name until rotate time.false
server.tomcat.accesslog.request-attributes-enabledSet request attributes for the IP address, Hostname, protocol, and port used for the request.false
server.tomcat.accesslog.rotateWhether to enable access log rotation.true
server.tomcat.accesslog.suffixLog file name suffix..log
server.tomcat.additional-tld-skip-patternsComma-separated list of additional patterns that match jars to ignore for TLD scanning. The special '?' and '*' characters can be used in the pattern to match one and only one character and zero or more characters respectively.
server.tomcat.background-processor-delayDelay between the invocation of backgroundProcess methods. If a duration suffix is not specified, seconds will be used.10s
server.tomcat.basedirTomcat base directory. If not specified, a temporary directory is used.
server.tomcat.connection-timeoutAmount of time the connector will wait, after accepting a connection, for the request URI line to be presented.
server.tomcat.keep-alive-timeoutTime to wait for another HTTP request before the connection is closed. When not set the connectionTimeout is used. When set to -1 there will be no timeout.
server.tomcat.max-connectionsMaximum number of connections that the server accepts and processes at any given time. Once the limit has been reached, the operating system may still accept connections based on the "acceptCount" property.8192
server.tomcat.max-http-form-post-sizeMaximum size of the form content in any HTTP post request.2MB
server.tomcat.max-keep-alive-requestsMaximum number of HTTP requests that can be pipelined before the connection is closed. When set to 0 or 1, keep-alive and pipelining are disabled. When set to -1, an unlimited number of pipelined or keep-alive requests are allowed.100
server.tomcat.max-swallow-sizeMaximum amount of request body to swallow.2MB
server.tomcat.mbeanregistry.enabledWhether Tomcat's MBean Registry should be enabled.false
server.tomcat.processor-cacheMaximum number of idle processors that will be retained in the cache and reused with a subsequent request. When set to -1 the cache will be unlimited with a theoretical maximum size equal to the maximum number of connections.200
server.tomcat.redirect-context-rootWhether requests to the context root should be redirected by appending a / to the path. When using SSL terminated at a proxy, this property should be set to false.true
server.tomcat.reject-illegal-headerWhether to reject requests with illegal header names or values.true
server.tomcat.relaxed-path-charsComma-separated list of additional unencoded characters that should be allowed in URI paths. Only "< > [ \ ] ^ ` { | }" are allowed.
server.tomcat.relaxed-query-charsComma-separated list of additional unencoded characters that should be allowed in URI query strings. Only "< > [ \ ] ^ ` { | }" are allowed.
server.tomcat.remoteip.host-headerName of the HTTP header from which the remote host is extracted.X-Forwarded-Host
server.tomcat.remoteip.internal-proxiesRegular expression that matches proxies that are to be trusted.10\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}|192\\.168\\.\\d{1,3}\\.\\d{1,3}|169\\.254\\.\\d{1,3}\\.\\d{1,3}|127\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}|172\\.1[6-9]{1}\\.\\d{1,3}\\.\\d{1,3}|172\\.2[0-9]{1}\\.\\d{1,3}\\.\\d{1,3}|172\\.3[0-1]{1}\\.\\d{1,3}\\.\\d{1,3}|0:0:0:0:0:0:0:1|::1
server.tomcat.remoteip.port-headerName of the HTTP header used to override the original port value.X-Forwarded-Port
server.tomcat.remoteip.protocol-headerHeader that holds the incoming protocol, usually named "X-Forwarded-Proto".
server.tomcat.remoteip.protocol-header-https-valueValue of the protocol header indicating whether the incoming request uses SSL.https
server.tomcat.remoteip.remote-ip-headerName of the HTTP header from which the remote IP is extracted. For instance, 'X-FORWARDED-FOR'.
server.tomcat.resource.allow-cachingWhether static resource caching is permitted for this web application.true
server.tomcat.resource.cache-ttlTime-to-live of the static resource cache.
server.tomcat.threads.maxMaximum amount of worker threads.200
server.tomcat.threads.min-spareMinimum amount of worker threads.10
server.tomcat.uri-encodingCharacter encoding to use to decode the URI.UTF-8
server.tomcat.use-relative-redirectsWhether HTTP 1.1 and later location headers generated by a call to sendRedirect will use relative or absolute redirects.false
server.undertow.accesslog.dirUndertow access log directory.
server.undertow.accesslog.enabledWhether to enable the access log.false
server.undertow.accesslog.patternFormat pattern for access logs.common
server.undertow.accesslog.prefixLog file name prefix.access_log.
server.undertow.accesslog.rotateWhether to enable access log rotation.true
server.undertow.accesslog.suffixLog file name suffix.log
server.undertow.allow-encoded-slashWhether the server should decode percent encoded slash characters. Enabling encoded slashes can have security implications due to different servers interpreting the slash differently. Only enable this if you have a legacy application that requires it.false
server.undertow.always-set-keep-aliveWhether the 'Connection: keep-alive' header should be added to all responses, even if not required by the HTTP specification.true
server.undertow.buffer-sizeSize of each buffer. The default is derived from the maximum amount of memory that is available to the JVM.
server.undertow.decode-urlWhether the URL should be decoded. When disabled, percent-encoded characters in the URL will be left as-is.true
server.undertow.direct-buffersWhether to allocate buffers outside the Java heap. The default is derived from the maximum amount of memory that is available to the JVM.
server.undertow.eager-filter-initWhether servlet filters should be initialized on startup.true
server.undertow.max-cookiesMaximum number of cookies that are allowed. This limit exists to prevent hash collision based DOS attacks.200
server.undertow.max-headersMaximum number of headers that are allowed. This limit exists to prevent hash collision based DOS attacks.
server.undertow.max-http-post-sizeMaximum size of the HTTP post content. When the value is -1, the default, the size is unlimited.-1B
server.undertow.max-parametersMaximum number of query or path parameters that are allowed. This limit exists to prevent hash collision based DOS attacks.
server.undertow.no-request-timeoutAmount of time a connection can sit idle without processing a request, before it is closed by the server.
server.undertow.options.server.*Server options as defined in io.undertow.UndertowOptions.
server.undertow.options.socket.*Socket options as defined in org.xnio.Options.
server.undertow.preserve-path-on-forwardWhether to preserve the path of a request when it is forwarded.false
server.undertow.threads.ioNumber of I/O threads to create for the worker. The default is derived from the number of available processors.
server.undertow.threads.workerNumber of worker threads. The default is 8 times the number of I/O threads.
server.undertow.url-charsetCharset used to decode URLs.UTF-8

A.12. Security Properties

NameDescriptionDefault Value
spring.security.filter.dispatcher-typesSecurity filter chain dispatcher types.[async, error, request]
spring.security.filter.orderSecurity filter chain order.-100
spring.security.oauth2.client.provider.*OAuth provider details.
spring.security.oauth2.client.registration.*OAuth client registrations.
spring.security.oauth2.resourceserver.jwt.issuer-uriURI that can either be an OpenID Connect discovery endpoint or an OAuth 2.0 Authorization Server Metadata endpoint defined by RFC 8414.
spring.security.oauth2.resourceserver.jwt.jwk-set-uriJSON Web Key URI to use to verify the JWT token.
spring.security.oauth2.resourceserver.jwt.jws-algorithmJSON Web Algorithm used for verifying the digital signatures.RS256
spring.security.oauth2.resourceserver.jwt.public-key-locationLocation of the file containing the public key used to verify a JWT.
spring.security.oauth2.resourceserver.opaquetoken.client-idClient id used to authenticate with the token introspection endpoint.
spring.security.oauth2.resourceserver.opaquetoken.client-secretClient secret used to authenticate with the token introspection endpoint.
spring.security.oauth2.resourceserver.opaquetoken.introspection-uriOAuth 2.0 endpoint through which token introspection is accomplished.
spring.security.saml2.relyingparty.registration.*SAML2 relying party registrations.
spring.security.user.nameDefault user name.user
spring.security.user.passwordPassword for the default user name.
spring.security.user.rolesGranted roles for the default user name.

A.13. RSocket Properties

NameDescriptionDefault Value
spring.rsocket.server.addressNetwork address to which the server should bind.
spring.rsocket.server.fragment-sizeMaximum transmission unit. Frames larger than the specified value are fragmented.
spring.rsocket.server.mapping-pathPath under which RSocket handles requests (only works with websocket transport).
spring.rsocket.server.portServer port.
spring.rsocket.server.ssl.ciphersSupported SSL ciphers.
spring.rsocket.server.ssl.client-authClient authentication mode. Requires a trust store.
spring.rsocket.server.ssl.enabledWhether to enable SSL support.true
spring.rsocket.server.ssl.enabled-protocolsEnabled SSL protocols.
spring.rsocket.server.ssl.key-aliasAlias that identifies the key in the key store.
spring.rsocket.server.ssl.key-passwordPassword used to access the key in the key store.
spring.rsocket.server.ssl.key-storePath to the key store that holds the SSL certificate (typically a jks file).
spring.rsocket.server.ssl.key-store-passwordPassword used to access the key store.
spring.rsocket.server.ssl.key-store-providerProvider for the key store.
spring.rsocket.server.ssl.key-store-typeType of the key store.
spring.rsocket.server.ssl.protocolSSL protocol to use.TLS
spring.rsocket.server.ssl.trust-storeTrust store that holds SSL certificates.
spring.rsocket.server.ssl.trust-store-passwordPassword used to access the trust store.
spring.rsocket.server.ssl.trust-store-providerProvider for the trust store.
spring.rsocket.server.ssl.trust-store-typeType of the trust store.
spring.rsocket.server.transportRSocket transport protocol.tcp

A.14. Actuator Properties

NameDescriptionDefault Value
management.auditevents.enabledWhether to enable storage of audit events.true
management.cloudfoundry.enabledWhether to enable extended Cloud Foundry actuator endpoints.true
management.cloudfoundry.skip-ssl-validationWhether to skip SSL verification for Cloud Foundry actuator endpoint security calls.false
management.endpoint.auditevents.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.auditevents.enabledWhether to enable the auditevents endpoint.true
management.endpoint.beans.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.beans.enabledWhether to enable the beans endpoint.true
management.endpoint.caches.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.caches.enabledWhether to enable the caches endpoint.true
management.endpoint.conditions.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.conditions.enabledWhether to enable the conditions endpoint.true
management.endpoint.configprops.additional-keys-to-sanitizeKeys that should be sanitized in addition to those already configured. Keys can be simple strings that the property ends with or regular expressions.
management.endpoint.configprops.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.configprops.enabledWhether to enable the configprops endpoint.true
management.endpoint.configprops.keys-to-sanitizeKeys that should be sanitized. Keys can be simple strings that the property ends with or regular expressions.[password, secret, key, token, .*credentials.*, vcap_services, sun.java.command]
management.endpoint.env.additional-keys-to-sanitizeKeys that should be sanitized in addition to those already configured. Keys can be simple strings that the property ends with or regular expressions.
management.endpoint.env.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.env.enabledWhether to enable the env endpoint.true
management.endpoint.env.keys-to-sanitizeKeys that should be sanitized. Keys can be simple strings that the property ends with or regular expressions.[password, secret, key, token, .*credentials.*, vcap_services, sun.java.command]
management.endpoint.flyway.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.flyway.enabledWhether to enable the flyway endpoint.true
management.endpoint.health.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.health.enabledWhether to enable the health endpoint.true
management.endpoint.health.group.*Health endpoint groups.
management.endpoint.health.logging.slow-indicator-thresholdThreshold after which a warning will be logged for slow health indicators.10s
management.endpoint.health.probes.add-additional-pathsWhether to make the liveness and readiness health groups available on the main server port.false
management.endpoint.health.probes.enabledWhether to enable liveness and readiness probes.false
management.endpoint.health.rolesRoles used to determine whether a user is authorized to be shown details. When empty, all authenticated users are authorized.
management.endpoint.health.show-componentsWhen to show components. If not specified the 'show-details' setting will be used.
management.endpoint.health.show-detailsWhen to show full health details.never
management.endpoint.health.status.http-mapping.*Mapping of health statuses to HTTP status codes. By default, registered health statuses map to sensible defaults (for example, UP maps to 200).
management.endpoint.health.status.orderComma-separated list of health statuses in order of severity.[DOWN, OUT_OF_SERVICE, UP, UNKNOWN]
management.endpoint.heapdump.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.heapdump.enabledWhether to enable the heapdump endpoint.true
management.endpoint.httptrace.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.httptrace.enabledWhether to enable the httptrace endpoint.true
management.endpoint.info.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.info.enabledWhether to enable the info endpoint.true
management.endpoint.integrationgraph.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.integrationgraph.enabledWhether to enable the integrationgraph endpoint.true
management.endpoint.jolokia.config.*Jolokia settings. Refer to the documentation of Jolokia for more details.
management.endpoint.jolokia.enabledWhether to enable the jolokia endpoint.true
management.endpoint.liquibase.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.liquibase.enabledWhether to enable the liquibase endpoint.true
management.endpoint.logfile.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.logfile.enabledWhether to enable the logfile endpoint.true
management.endpoint.logfile.external-fileExternal Logfile to be accessed. Can be used if the logfile is written by output redirect and not by the logging system itself.
management.endpoint.loggers.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.loggers.enabledWhether to enable the loggers endpoint.true
management.endpoint.mappings.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.mappings.enabledWhether to enable the mappings endpoint.true
management.endpoint.metrics.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.metrics.enabledWhether to enable the metrics endpoint.true
management.endpoint.prometheus.enabledWhether to enable the prometheus endpoint.true
management.endpoint.quartz.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.quartz.enabledWhether to enable the quartz endpoint.true
management.endpoint.scheduledtasks.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.scheduledtasks.enabledWhether to enable the scheduledtasks endpoint.true
management.endpoint.sessions.enabledWhether to enable the sessions endpoint.true
management.endpoint.shutdown.enabledWhether to enable the shutdown endpoint.false
management.endpoint.startup.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.startup.enabledWhether to enable the startup endpoint.true
management.endpoint.threaddump.cache.time-to-liveMaximum time that a response can be cached.0ms
management.endpoint.threaddump.enabledWhether to enable the threaddump endpoint.true
management.endpoints.enabled-by-defaultWhether to enable or disable all endpoints by default.
management.endpoints.jmx.domainEndpoints JMX domain name. Fallback to 'spring.jmx.default-domain' if set.org.springframework.boot
management.endpoints.jmx.exposure.excludeEndpoint IDs that should be excluded or '*' for all.
management.endpoints.jmx.exposure.includeEndpoint IDs that should be included or '*' for all.*
management.endpoints.jmx.static-namesAdditional static properties to append to all ObjectNames of MBeans representing Endpoints.
management.endpoints.migrate-legacy-idsWhether to transparently migrate legacy endpoint IDs.false
management.endpoints.web.base-pathBase path for Web endpoints. Relative to the servlet context path (server.servlet.context-path) or WebFlux base path (spring.webflux.base-path) when the management server is sharing the main server port. Relative to the management server base path (management.server.base-path) when a separate management server port (management.server.port) is configured./actuator
management.endpoints.web.cors.allow-credentialsWhether credentials are supported. When not set, credentials are not supported.
management.endpoints.web.cors.allowed-headersComma-separated list of headers to allow in a request. '*' allows all headers.
management.endpoints.web.cors.allowed-methodsComma-separated list of methods to allow. '*' allows all methods. When not set, defaults to GET.
management.endpoints.web.cors.allowed-origin-patternsComma-separated list of origin patterns to allow. Unlike allowed origins which only supports '', origin patterns are more flexible (for example 'https://.example.com') and can be used when credentials are allowed. When no allowed origin patterns or allowed origins are set, CORS support is disabled.
management.endpoints.web.cors.allowed-originsComma-separated list of origins to allow. '' allows all origins. When credentials are allowed, '' cannot be used and origin patterns should be configured instead. When no allowed origins or allowed origin patterns are set, CORS support is disabled.
management.endpoints.web.cors.exposed-headersComma-separated list of headers to include in a response.
management.endpoints.web.cors.max-ageHow long the response from a pre-flight request can be cached by clients. If a duration suffix is not specified, seconds will be used.1800s
management.endpoints.web.discovery.enabledWhether the discovery page is enabled.true
management.endpoints.web.exposure.excludeEndpoint IDs that should be excluded or '*' for all.
management.endpoints.web.exposure.includeEndpoint IDs that should be included or '*' for all.[health]
management.endpoints.web.path-mapping.*Mapping between endpoint IDs and the path that should expose them.
management.health.cassandra.enabledWhether to enable Cassandra health check.true
management.health.couchbase.enabledWhether to enable Couchbase health check.true
management.health.db.enabledWhether to enable database health check.true
management.health.db.ignore-routing-data-sourcesWhether to ignore AbstractRoutingDataSources when creating database health indicators.false
management.health.defaults.enabledWhether to enable default health indicators.true
management.health.diskspace.enabledWhether to enable disk space health check.true
management.health.diskspace.pathPath used to compute the available disk space.
management.health.diskspace.thresholdMinimum disk space that should be available.10MB
management.health.elasticsearch.enabledWhether to enable Elasticsearch health check.true
management.health.influxdb.enabledWhether to enable InfluxDB health check.true
management.health.jms.enabledWhether to enable JMS health check.true
management.health.ldap.enabledWhether to enable LDAP health check.true
management.health.livenessstate.enabledWhether to enable liveness state health check.false
management.health.mail.enabledWhether to enable Mail health check.true
management.health.mongo.enabledWhether to enable MongoDB health check.true
management.health.neo4j.enabledWhether to enable Neo4j health check.true
management.health.ping.enabledWhether to enable ping health check.true
management.health.rabbit.enabledWhether to enable RabbitMQ health check.true
management.health.readinessstate.enabledWhether to enable readiness state health check.false
management.health.redis.enabledWhether to enable Redis health check.true
management.health.solr.enabledWhether to enable Solr health check.true
management.info.build.enabledWhether to enable build info.true
management.info.defaults.enabledWhether to enable default info contributors.true
management.info.env.enabledWhether to enable environment info.false
management.info.git.enabledWhether to enable git info.true
management.info.git.modeMode to use to expose git information.simple
management.info.java.enabledWhether to enable Java info.false
management.metrics.data.repository.autotime.enabledWhether to enable auto-timing.true
management.metrics.data.repository.autotime.percentilesPercentiles for which additional time series should be published.
management.metrics.data.repository.autotime.percentiles-histogramWhether to publish percentile histrograms.false
management.metrics.data.repository.metric-nameName of the metric for sent requests.spring.data.repository.invocations
management.metrics.distribution.buffer-length.*Number of histograms for meter IDs starting with the specified name to keep in the ring buffer. The longest match wins, the key all can also be used to configure all meters.
management.metrics.distribution.expiry.*Maximum amount of time that samples for meter IDs starting with the specified name are accumulated to decaying distribution statistics before they are reset and rotated. The longest match wins, the key all can also be used to configure all meters.
management.metrics.distribution.maximum-expected-value.*Maximum value that meter IDs starting with the specified name are expected to observe. The longest match wins. Values can be specified as a double or as a Duration value (for timer meters, defaulting to ms if no unit specified).
management.metrics.distribution.minimum-expected-value.*Minimum value that meter IDs starting with the specified name are expected to observe. The longest match wins. Values can be specified as a double or as a Duration value (for timer meters, defaulting to ms if no unit specified).
management.metrics.distribution.percentiles.*Specific computed non-aggregable percentiles to ship to the backend for meter IDs starting-with the specified name. The longest match wins, the key 'all' can also be used to configure all meters.
management.metrics.distribution.percentiles-histogram.*Whether meter IDs starting with the specified name should publish percentile histograms. For monitoring systems that support aggregable percentile calculation based on a histogram, this can be set to true. For other systems, this has no effect. The longest match wins, the key 'all' can also be used to configure all meters.
management.metrics.distribution.slo.*Specific service-level objective boundaries for meter IDs starting with the specified name. The longest match wins. Counters will be published for each specified boundary. Values can be specified as a double or as a Duration value (for timer meters, defaulting to ms if no unit specified).
management.metrics.enable.*Whether meter IDs starting with the specified name should be enabled. The longest match wins, the key 'all' can also be used to configure all meters.
management.metrics.export.appoptics.api-tokenAppOptics API token.
management.metrics.export.appoptics.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.500
management.metrics.export.appoptics.connect-timeoutConnection timeout for requests to this backend.5s
management.metrics.export.appoptics.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.appoptics.floor-timesWhether to ship a floored time, useful when sending measurements from multiple hosts to align them on a given time boundary.false
management.metrics.export.appoptics.host-tagTag that will be mapped to "@host" when shipping metrics to AppOptics.instance
management.metrics.export.appoptics.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.appoptics.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.appoptics.uriURI to ship metrics to.https://api.appoptics.com/v1/measurements
management.metrics.export.atlas.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.atlas.config-refresh-frequencyFrequency for refreshing config settings from the LWC service.10s
management.metrics.export.atlas.config-time-to-liveTime to live for subscriptions from the LWC service.150s
management.metrics.export.atlas.config-uriURI for the Atlas LWC endpoint to retrieve current subscriptions.http://localhost:7101/lwc/api/v1/expressions/local-dev
management.metrics.export.atlas.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.atlas.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.atlas.eval-uriURI for the Atlas LWC endpoint to evaluate the data for a subscription.http://localhost:7101/lwc/api/v1/evaluate
management.metrics.export.atlas.lwc-enabledWhether to enable streaming to Atlas LWC.false
management.metrics.export.atlas.meter-time-to-liveTime to live for meters that do not have any activity. After this period the meter will be considered expired and will not get reported.15m
management.metrics.export.atlas.num-threadsNumber of threads to use with the metrics publishing scheduler.4
management.metrics.export.atlas.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.atlas.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.atlas.uriURI of the Atlas server.http://localhost:7101/api/v1/publish
management.metrics.export.datadog.api-keyDatadog API key.
management.metrics.export.datadog.application-keyDatadog application key. Not strictly required, but improves the Datadog experience by sending meter descriptions, types, and base units to Datadog.
management.metrics.export.datadog.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.datadog.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.datadog.descriptionsWhether to publish descriptions metadata to Datadog. Turn this off to minimize the amount of metadata sent.true
management.metrics.export.datadog.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.datadog.host-tagTag that will be mapped to "host" when shipping metrics to Datadog.instance
management.metrics.export.datadog.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.datadog.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.datadog.uriURI to ship metrics to. Set this if you need to publish metrics to a Datadog site other than US, or to an internal proxy en-route to Datadog.https://api.datadoghq.com
management.metrics.export.defaults.enabledWhether to enable default metrics exporters.true
management.metrics.export.dynatrace.api-tokenDynatrace authentication token.
management.metrics.export.dynatrace.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.dynatrace.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.dynatrace.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.dynatrace.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.dynatrace.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.dynatrace.uriURI to ship metrics to. Should be used for SaaS, self-managed instances or to en-route through an internal proxy.
management.metrics.export.dynatrace.v1.device-idID of the custom device that is exporting metrics to Dynatrace.
management.metrics.export.dynatrace.v1.groupGroup for exported metrics. Used to specify custom device group name in the Dynatrace UI.
management.metrics.export.dynatrace.v1.technology-typeTechnology type for exported metrics. Used to group metrics under a logical technology name in the Dynatrace UI.java
management.metrics.export.dynatrace.v2.default-dimensions.*Default dimensions that are added to all metrics in the form of key-value pairs. These are overwritten by Micrometer tags if they use the same key.
management.metrics.export.dynatrace.v2.enrich-with-dynatrace-metadataWhether to enable Dynatrace metadata export.true
management.metrics.export.dynatrace.v2.metric-key-prefixPrefix string that is added to all exported metrics.
management.metrics.export.elastic.api-key-credentialsBase64-encoded credentials string. Mutually exclusive with user-name and password.
management.metrics.export.elastic.auto-create-indexWhether to create the index automatically if it does not exist.true
management.metrics.export.elastic.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.elastic.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.elastic.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.elastic.hostHost to export metrics to.http://localhost:9200
management.metrics.export.elastic.indexIndex to export metrics to.micrometer-metrics
management.metrics.export.elastic.index-date-formatIndex date format used for rolling indices. Appended to the index name.yyyy-MM
management.metrics.export.elastic.index-date-separatorPrefix to separate the index name from the date format used for rolling indices.-
management.metrics.export.elastic.passwordLogin password of the Elastic server. Mutually exclusive with api-key-credentials.
management.metrics.export.elastic.pipelineIngest pipeline name. By default, events are not pre-processed.
management.metrics.export.elastic.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.elastic.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.elastic.timestamp-field-nameName of the timestamp field.@timestamp
management.metrics.export.elastic.user-nameLogin user of the Elastic server. Mutually exclusive with api-key-credentials.
management.metrics.export.ganglia.addressing-modeUDP addressing mode, either unicast or multicast.multicast
management.metrics.export.ganglia.duration-unitsBase time unit used to report durations.milliseconds
management.metrics.export.ganglia.enabledWhether exporting of metrics to Ganglia is enabled.true
management.metrics.export.ganglia.hostHost of the Ganglia server to receive exported metrics.localhost
management.metrics.export.ganglia.portPort of the Ganglia server to receive exported metrics.8649
management.metrics.export.ganglia.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.ganglia.time-to-liveTime to live for metrics on Ganglia. Set the multicast Time-To-Live to be one greater than the number of hops (routers) between the hosts.1
management.metrics.export.graphite.duration-unitsBase time unit used to report durations.milliseconds
management.metrics.export.graphite.enabledWhether exporting of metrics to Graphite is enabled.true
management.metrics.export.graphite.graphite-tags-enabledWhether Graphite tags should be used, as opposed to a hierarchical naming convention. Enabled by default unless "tagsAsPrefix" is set.
management.metrics.export.graphite.hostHost of the Graphite server to receive exported metrics.localhost
management.metrics.export.graphite.portPort of the Graphite server to receive exported metrics.2004
management.metrics.export.graphite.protocolProtocol to use while shipping data to Graphite.pickled
management.metrics.export.graphite.rate-unitsBase time unit used to report rates.seconds
management.metrics.export.graphite.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.graphite.tags-as-prefixFor the hierarchical naming convention, turn the specified tag keys into part of the metric prefix. Ignored if "graphiteTagsEnabled" is true.[]
management.metrics.export.humio.api-tokenHumio API token.
management.metrics.export.humio.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.humio.connect-timeoutConnection timeout for requests to this backend.5s
management.metrics.export.humio.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.humio.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.humio.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.humio.tags.*Humio tags describing the data source in which metrics will be stored. Humio tags are a distinct concept from Micrometer's tags. Micrometer's tags are used to divide metrics along dimensional boundaries.
management.metrics.export.humio.uriURI to ship metrics to. If you need to publish metrics to an internal proxy en-route to Humio, you can define the location of the proxy with this.https://cloud.humio.com
management.metrics.export.influx.api-versionAPI version of InfluxDB to use. Defaults to 'v1' unless an org is configured. If an org is configured, defaults to 'v2'.
management.metrics.export.influx.auto-create-dbWhether to create the Influx database if it does not exist before attempting to publish metrics to it. InfluxDB v1 only.true
management.metrics.export.influx.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.influx.bucketBucket for metrics. Use either the bucket name or ID. Defaults to the value of the db property if not set. InfluxDB v2 only.
management.metrics.export.influx.compressedWhether to enable GZIP compression of metrics batches published to Influx.true
management.metrics.export.influx.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.influx.consistencyWrite consistency for each point.one
management.metrics.export.influx.dbDatabase to send metrics to. InfluxDB v1 only.mydb
management.metrics.export.influx.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.influx.orgOrg to write metrics to. InfluxDB v2 only.
management.metrics.export.influx.passwordLogin password of the Influx server. InfluxDB v1 only.
management.metrics.export.influx.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.influx.retention-durationTime period for which Influx should retain data in the current database. For instance 7d, check the influx documentation for more details on the duration format. InfluxDB v1 only.
management.metrics.export.influx.retention-policyRetention policy to use (Influx writes to the DEFAULT retention policy if one is not specified). InfluxDB v1 only.
management.metrics.export.influx.retention-replication-factorHow many copies of the data are stored in the cluster. Must be 1 for a single node instance. InfluxDB v1 only.
management.metrics.export.influx.retention-shard-durationTime range covered by a shard group. For instance 2w, check the influx documentation for more details on the duration format. InfluxDB v1 only.
management.metrics.export.influx.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.influx.tokenAuthentication token to use with calls to the InfluxDB backend. For InfluxDB v1, the Bearer scheme is used. For v2, the Token scheme is used.
management.metrics.export.influx.uriURI of the Influx server.http://localhost:8086
management.metrics.export.influx.user-nameLogin user of the Influx server. InfluxDB v1 only.
management.metrics.export.jmx.domainMetrics JMX domain name.metrics
management.metrics.export.jmx.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.jmx.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.kairos.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.kairos.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.kairos.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.kairos.passwordLogin password of the KairosDB server.
management.metrics.export.kairos.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.kairos.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.kairos.uriURI of the KairosDB server.http://localhost:8080/api/v1/datapoints
management.metrics.export.kairos.user-nameLogin user of the KairosDB server.
management.metrics.export.newrelic.account-idNew Relic account ID.
management.metrics.export.newrelic.api-keyNew Relic API key.
management.metrics.export.newrelic.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.newrelic.client-provider-typeClient provider type to use.
management.metrics.export.newrelic.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.newrelic.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.newrelic.event-typeThe event type that should be published. This property will be ignored if 'meter-name-event-type-enabled' is set to 'true'.SpringBootSample
management.metrics.export.newrelic.meter-name-event-type-enabledWhether to send the meter name as the event type instead of using the 'event-type' configuration property value. Can be set to 'true' if New Relic guidelines are not being followed or event types consistent with previous Spring Boot releases are required.false
management.metrics.export.newrelic.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.newrelic.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.newrelic.uriURI to ship metrics to.https://insights-collector.newrelic.com
management.metrics.export.prometheus.descriptionsWhether to enable publishing descriptions as part of the scrape payload to Prometheus. Turn this off to minimize the amount of data sent on each scrape.true
management.metrics.export.prometheus.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.prometheus.histogram-flavorHistogram type for backing DistributionSummary and Timer.prometheus
management.metrics.export.prometheus.pushgateway.base-urlBase URL for the Pushgateway.http://localhost:9091
management.metrics.export.prometheus.pushgateway.enabledEnable publishing via a Prometheus Pushgateway.false
management.metrics.export.prometheus.pushgateway.grouping-key.*Grouping key for the pushed metrics.
management.metrics.export.prometheus.pushgateway.jobJob identifier for this application instance.
management.metrics.export.prometheus.pushgateway.passwordLogin password of the Prometheus Pushgateway.
management.metrics.export.prometheus.pushgateway.push-rateFrequency with which to push metrics.1m
management.metrics.export.prometheus.pushgateway.shutdown-operationOperation that should be performed on shutdown.none
management.metrics.export.prometheus.pushgateway.usernameLogin user of the Prometheus Pushgateway.
management.metrics.export.prometheus.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.signalfx.access-tokenSignalFX access token.
management.metrics.export.signalfx.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.signalfx.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.signalfx.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.signalfx.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.signalfx.sourceUniquely identifies the app instance that is publishing metrics to SignalFx. Defaults to the local host name.
management.metrics.export.signalfx.stepStep size (i.e. reporting frequency) to use.10s
management.metrics.export.signalfx.uriURI to ship metrics to.https://ingest.signalfx.com
management.metrics.export.simple.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.simple.modeCounting mode.cumulative
management.metrics.export.simple.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.stackdriver.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.stackdriver.connect-timeoutConnection timeout for requests to this backend.1s
management.metrics.export.stackdriver.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.stackdriver.project-idIdentifier of the Google Cloud project to monitor.
management.metrics.export.stackdriver.read-timeoutRead timeout for requests to this backend.10s
management.metrics.export.stackdriver.resource-labels.*Monitored resource's labels.
management.metrics.export.stackdriver.resource-typeMonitored resource type.global
management.metrics.export.stackdriver.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.stackdriver.use-semantic-metric-typesWhether to use semantically correct metric types. When false, counter metrics are published as the GAUGE MetricKind. When true, counter metrics are published as the CUMULATIVE MetricKind.false
management.metrics.export.statsd.bufferedWhether measurements should be buffered before sending to the StatsD server.true
management.metrics.export.statsd.enabledWhether exporting of metrics to StatsD is enabled.true
management.metrics.export.statsd.flavorStatsD line protocol to use.datadog
management.metrics.export.statsd.hostHost of the StatsD server to receive exported metrics.localhost
management.metrics.export.statsd.max-packet-lengthTotal length of a single payload should be kept within your network's MTU.1400
management.metrics.export.statsd.polling-frequencyHow often gauges will be polled. When a gauge is polled, its value is recalculated and if the value has changed (or publishUnchangedMeters is true), it is sent to the StatsD server.10s
management.metrics.export.statsd.portPort of the StatsD server to receive exported metrics.8125
management.metrics.export.statsd.protocolProtocol of the StatsD server to receive exported metrics.udp
management.metrics.export.statsd.publish-unchanged-metersWhether to send unchanged meters to the StatsD server.true
management.metrics.export.statsd.stepStep size to use in computing windowed statistics like max. To get the most out of these statistics, align the step interval to be close to your scrape interval.1m
management.metrics.export.wavefront.api-tokenAPI token used when publishing metrics directly to the Wavefront API host.
management.metrics.export.wavefront.batch-sizeNumber of measurements per request to use for this backend. If more measurements are found, then multiple requests will be made.10000
management.metrics.export.wavefront.enabledWhether exporting of metrics to this backend is enabled.true
management.metrics.export.wavefront.global-prefixGlobal prefix to separate metrics originating from this app's instrumentation from those originating from other Wavefront integrations when viewed in the Wavefront UI.
management.metrics.export.wavefront.sender.flush-intervalInterval at which points are flushed to the Wavefront server.1s
management.metrics.export.wavefront.sender.max-queue-sizeMaximum queue size of the in-memory buffer.50000
management.metrics.export.wavefront.sender.message-sizeMaximum message size, such that each batch is reported as one or more messages where no message exceeds the specified size.
management.metrics.export.wavefront.sourceUnique identifier for the app instance that is the source of metrics being published to Wavefront. Defaults to the local host name.
management.metrics.export.wavefront.stepStep size (i.e. reporting frequency) to use.1m
management.metrics.export.wavefront.uriURI to ship metrics to.https://longboard.wavefront.com
management.metrics.mongo.command.enabledWhether to enable Mongo client command metrics.true
management.metrics.mongo.connectionpool.enabledWhether to enable Mongo connection pool metrics.true
management.metrics.system.diskspace.pathsComma-separated list of paths to report disk metrics for.[.]
management.metrics.tags.*Common tags that are applied to every meter.
management.metrics.use-global-registryWhether auto-configured MeterRegistry implementations should be bound to the global static registry on Metrics. For testing, set this to 'false' to maximize test independence.true
management.metrics.web.client.max-uri-tagsMaximum number of unique URI tag values allowed. After the max number of tag values is reached, metrics with additional tag values are denied by filter.100
management.metrics.web.client.request.autotime.enabledWhether to automatically time web client requests.true
management.metrics.web.client.request.autotime.percentilesComputed non-aggregable percentiles to publish.
management.metrics.web.client.request.autotime.percentiles-histogramWhether percentile histograms should be published.false
management.metrics.web.client.request.metric-nameName of the metric for sent requests.http.client.requests
management.metrics.web.server.max-uri-tagsMaximum number of unique URI tag values allowed. After the max number of tag values is reached, metrics with additional tag values are denied by filter.100
management.metrics.web.server.request.autotime.enabledWhether to automatically time web server requests.true
management.metrics.web.server.request.autotime.percentilesComputed non-aggregable percentiles to publish.
management.metrics.web.server.request.autotime.percentiles-histogramWhether percentile histograms should be published.false
management.metrics.web.server.request.ignore-trailing-slashWhether the trailing slash should be ignored when recording metrics.true
management.metrics.web.server.request.metric-nameName of the metric for received requests.http.server.requests
management.server.add-application-context-headerAdd the "X-Application-Context" HTTP header in each response.false
management.server.addressNetwork address to which the management endpoints should bind. Requires a custom management.server.port.
management.server.base-pathManagement endpoint base path (for instance, '/management'). Requires a custom management.server.port.
management.server.portManagement endpoint HTTP port (uses the same port as the application by default). Configure a different port to use management-specific SSL.
management.server.ssl.ciphersSupported SSL ciphers.
management.server.ssl.client-authClient authentication mode. Requires a trust store.
management.server.ssl.enabledWhether to enable SSL support.true
management.server.ssl.enabled-protocolsEnabled SSL protocols.
management.server.ssl.key-aliasAlias that identifies the key in the key store.
management.server.ssl.key-passwordPassword used to access the key in the key store.
management.server.ssl.key-storePath to the key store that holds the SSL certificate (typically a jks file).
management.server.ssl.key-store-passwordPassword used to access the key store.
management.server.ssl.key-store-providerProvider for the key store.
management.server.ssl.key-store-typeType of the key store.
management.server.ssl.protocolSSL protocol to use.TLS
management.server.ssl.trust-storeTrust store that holds SSL certificates.
management.server.ssl.trust-store-passwordPassword used to access the trust store.
management.server.ssl.trust-store-providerProvider for the trust store.
management.server.ssl.trust-store-typeType of the trust store.
management.trace.http.enabledWhether to enable HTTP request-response tracing.true
management.trace.http.includeItems to be included in the trace. Defaults to request headers (excluding Authorization and Cookie), response headers (excluding Set-Cookie), and time taken.[request-headers, response-headers, errors]

A.15. Devtools Properties

NameDescriptionDefault Value
spring.devtools.add-propertiesWhether to enable development property defaults.true
spring.devtools.livereload.enabledWhether to enable a livereload.com-compatible server.true
spring.devtools.livereload.portServer port.35729
spring.devtools.remote.context-pathContext path used to handle the remote connection./.~~spring-boot!~
spring.devtools.remote.proxy.hostThe host of the proxy to use to connect to the remote application.
spring.devtools.remote.proxy.portThe port of the proxy to use to connect to the remote application.
spring.devtools.remote.restart.enabledWhether to enable remote restart.true
spring.devtools.remote.secretA shared secret required to establish a connection (required to enable remote support).
spring.devtools.remote.secret-header-nameHTTP header used to transfer the shared secret.X-AUTH-TOKEN
spring.devtools.restart.additional-excludeAdditional patterns that should be excluded from triggering a full restart.
spring.devtools.restart.additional-pathsAdditional paths to watch for changes.
spring.devtools.restart.enabledWhether to enable automatic restart.true
spring.devtools.restart.excludePatterns that should be excluded from triggering a full restart.META-INF/maven/**,META-INF/resources/**,resources/**,static/**,public/**,templates/**,**/*Test.class,**/*Tests.class,git.properties,META-INF/build-info.properties
spring.devtools.restart.log-condition-evaluation-deltaWhether to log the condition evaluation delta upon restart.true
spring.devtools.restart.poll-intervalAmount of time to wait between polling for classpath changes.1s
spring.devtools.restart.quiet-periodAmount of quiet time required without any classpath changes before a restart is triggered.400ms
spring.devtools.restart.trigger-fileName of a specific file that, when changed, triggers the restart check. Must be a simple name (without any path) of a file that appears on your classpath. If not specified, any classpath file change triggers the restart.

A.16. Testing Properties

NameDescriptionDefault Value
spring.test.database.replaceType of existing DataSource to replace.any
spring.test.mockmvc.printMVC Print option.default