jabrena / spring-boot-user-beans

A visual way to increase the developer awareness to minimize the number of Beans in memory.
https://jabrena.github.io/spring-boot-user-beans/
Apache License 2.0
52 stars 3 forks source link

Show a view with property keys for all beans in memory #156

Closed jabrena closed 1 year ago

jabrena commented 1 year ago

Current list for testing:

AcceptHeaderLocaleResolver
AntPathMatcher
AopAutoConfiguration
AopAutoConfiguration$ClassProxyingConfiguration$$Lambda/0x00000008012f2d78
ApplicationAvailabilityAutoConfiguration
ApplicationAvailabilityBean
AvailabilityHealthContributorAutoConfiguration
BasicErrorController
BeanNameUrlHandlerMapping
BeanNameViewResolver
BeansEndpoint
BeansEndpointAutoConfiguration
CachingMetadataReaderFactory
CachingOperationInvokerAdvisor
ChatGTPConfig
ChatGTPMapper
ChatGTPProvider
ClassLoaderMetrics
ClassProxyingConfiguration
CompositeMeterRegistryAutoConfiguration
CompositeUriComponentsContributor
ConfigurationPropertiesAutoConfiguration
ContentNegotiatingViewResolver
ContentNegotiationManager
ControllerEndpointDiscoverer
ControllerEndpointHandlerMapping
ConversionServiceParameterValueMapper
CorsEndpointProperties
DefaultErrorAttributes
DefaultErrorViewResolver
DefaultErrorViewResolverConfiguration
DefaultLifecycleProcessor
DefaultListableBeanFactory@4a8ab068
DefaultMeterObservationHandler
DefaultRequestToViewNameTranslator
DefaultSslBundleRegistry
DependsOnDatabaseInitializationPostProcessor
DiskSpaceHealthContributorAutoConfiguration
DiskSpaceHealthIndicator
DiskSpaceHealthIndicatorProperties
DiskSpaceMetricsBinder
DispatcherServlet
DispatcherServletAutoConfiguration
DispatcherServletAutoConfiguration$DispatcherServletConfiguration
DispatcherServletAutoConfiguration$DispatcherServletRegistrationConfiguration
DispatcherServletConfiguration
DispatcherServletRegistrationBean
DispatcherServletRegistrationConfiguration
EmbeddedTomcat
EnableSameManagementContextConfiguration
EnableWebMvcConfiguration
EndpointAutoConfiguration
EndpointMediaTypes
ErrorMvcAutoConfiguration
ErrorMvcAutoConfiguration$DefaultErrorViewResolverConfiguration
ErrorMvcAutoConfiguration$WhitelabelErrorViewConfiguration
ErrorPageCustomizer
ErrorPageRegistrarBeanPostProcessor
FileDescriptorMetrics
FilterRegistrationBean
FixedThemeResolver
GenericWebApplicationContext@698122b2
HandlerExceptionResolverComposite
HandlerFunctionAdapter
HandlerMapping
HealthContributorAutoConfiguration
HttpClientObservationsAutoConfiguration
HttpClientObservationsAutoConfiguration$MeterFilterConfiguration
HttpEncodingAutoConfiguration
HttpMessageConverters
HttpMessageConvertersAutoConfiguration
HttpMessageConvertersAutoConfiguration$StringHttpMessageConverterConfiguration
HttpRequestHandlerAdapter
IncludeExcludeEndpointFilter
InfoContributorAutoConfiguration
InfoContributorProperties
IntegrationMetricsAutoConfiguration
InternalResourceViewResolver
Jackson2ObjectMapperBuilder
Jackson2ObjectMapperBuilderCustomizerConfiguration
JacksonAutoConfiguration
JacksonAutoConfiguration$Jackson2ObjectMapperBuilderCustomizerConfiguration
JacksonAutoConfiguration$JacksonMixinConfiguration
JacksonAutoConfiguration$ParameterNamesModuleConfiguration
JacksonEndpointAutoConfiguration
JacksonEndpointAutoConfiguration$$Lambda/0x0000000801337bb0
JacksonHttpMessageConvertersConfiguration
JacksonHttpMessageConvertersConfiguration$MappingJackson2HttpMessageConverterConfiguration
JacksonMixinConfiguration
JacksonObjectMapperBuilderConfiguration
JacksonObjectMapperConfiguration
JacksonProperties
JavaClassExplanationService
JsonComponentModule
JsonMixinModule
JsonMixinModuleEntries
JvmCompilationMetrics
JvmGcMetrics
JvmHeapPressureMetrics
JvmInfoMetrics
JvmMemoryMetrics
JvmMetricsAutoConfiguration
JvmThreadMetrics
LifecycleAutoConfiguration
LifecycleProperties
LocaleCharsetMappingsCustomizer
LogbackMetrics
LogbackMetricsAutoConfiguration
ManagementContextAutoConfiguration
ManagementContextFactory
ManagementServerProperties
MappingJackson2HttpMessageConverter
MappingJackson2HttpMessageConverterConfiguration
MappingWebEndpointPathMapper
MeterFilterConfiguration
MeterObservationHandlerConfiguration
MeterRegistryPostProcessor
MetricsAutoConfiguration
MetricsProperties
MultipartAutoConfiguration
MultipartConfigElement
MultipartProperties
NoOpValidator
ObjectMapper
ObservationAutoConfiguration
ObservationAutoConfiguration$MeterObservationHandlerConfiguration$OnlyMetricsMeterObservationHandlerConfiguration
ObservationAutoConfiguration$OnlyMetricsConfiguration
ObservationHandlerGrouping
ObservationProperties
ObservationRegistryPostProcessor
ObservationRestTemplateCustomizer
OnlyMetricsConfiguration
OnlyMetricsMeterObservationHandlerConfiguration
OrderedCharacterEncodingFilter
OrderedFormContentFilter
OrderedRequestContextFilter
ParameterNamesModule
ParameterNamesModuleConfiguration
PathMappedEndpoints
PathPatternParser
PingHealthIndicator
PreserveErrorControllerTargetClassPostProcessor
ProcessorMetrics
ProjectInfoAutoConfiguration
ProjectInfoProperties
PropertiesMeterFilter
PropertyPlaceholderAutoConfiguration
PropertySourcesPlaceholderConfigurer
RequestMappingHandlerAdapter
RequestMappingHandlerMapping
ResourceUrlProvider
RestTemplateAutoConfiguration
RestTemplateObservationConfiguration
RouterFunctionMapping
SameManagementContextConfiguration
ServerProperties
ServletEndpointDiscoverer
ServletEndpointManagementContextConfiguration
ServletEndpointManagementContextConfiguration$WebMvcServletEndpointManagementContextConfiguration
ServletEndpointRegistrar
ServletManagementContextAutoConfiguration
ServletManagementContextAutoConfiguration$$Lambda/0x00000008013802f8
ServletWebServerFactoryAutoConfiguration
ServletWebServerFactoryConfiguration$EmbeddedTomcat
ServletWebServerFactoryCustomizer
SessionFlashMapManager
SimpleControllerHandlerAdapter
SimpleMeterRegistry
SimpleMetricsExportAutoConfiguration
SimpleObservationRegistry
SimpleProperties
SimplePropertiesConfigAdapter
SimpleUrlHandlerMapping
SqlInitializationAutoConfiguration
SqlInitializationProperties
SslAutoConfiguration
SslProperties
SslPropertiesBundleRegistrar
StandardJackson2ObjectMapperBuilderCustomizer
StandardServletMultipartResolver
StartupTimeMetricsListener
StartupTimeMetricsListenerAutoConfiguration
StaticView
StringHttpMessageConverter
StringHttpMessageConverterConfiguration
SupportController
SystemMetricsAutoConfiguration
TaskExecutionAutoConfiguration
TaskExecutionProperties
TaskExecutorBuilder
TaskExecutorMetricsAutoConfiguration
TaskSchedulerBuilder
TaskSchedulingAutoConfiguration
TaskSchedulingProperties
TestApplication
ThreadPoolTaskExecutor
TomcatMetricsAutoConfiguration
TomcatMetricsBinder
TomcatServletWebServerFactory
TomcatServletWebServerFactoryCustomizer
TomcatWebSocketConfiguration
TomcatWebSocketServletWebServerCustomizer
UptimeMetrics
UrlPathHelper
UserBeansEndpoint
UserBeansGraphService
UserBeansService
ViewResolverComposite
WebConversionService
WebEndpointAutoConfiguration
WebEndpointAutoConfiguration$WebEndpointServletConfiguration
WebEndpointDiscoverer
WebEndpointProperties
WebEndpointServletConfiguration
WebMvcAutoConfiguration
WebMvcAutoConfiguration$EnableWebMvcConfiguration
WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter
WebMvcAutoConfigurationAdapter
WebMvcEndpointHandlerMapping
WebMvcEndpointManagementContextConfiguration
WebMvcObservationAutoConfiguration
WebMvcObservationAutoConfiguration$MeterFilterConfiguration
WebMvcProperties
WebMvcServletEndpointManagementContextConfiguration
WebProperties
WebServerFactoryCustomizerBeanPostProcessor
WebSocketServletAutoConfiguration
WebSocketServletAutoConfiguration$TomcatWebSocketConfiguration
WelcomePageHandlerMapping
WelcomePageNotAcceptableHandlerMapping
WhitelabelErrorViewConfiguration
applicationTaskExecutor
beansEndpoint
controllerEndpointDiscoverer
dispatcherServlet
dispatcherServletRegistration
endpointMediaTypes
endpointObjectMapperWebMvcConfigurer
endpointOperationParameterMapper
environment
errorAttributes
jsonMixinModuleEntries
metricsHttpClientUriTagFilter
metricsHttpServerUriTagFilter
micrometerClock
mvcContentNegotiationManager
mvcConversionService
mvcResourceUrlProvider
mvcValidator
observationRegistry
requestMappingHandlerAdapter
servletEndpointDiscoverer
simpleConfig
simpleMeterRegistry
sslPropertiesSslBundleRegistrar
taskExecutorBuilder
webEndpointDiscoverer
jabrena commented 1 year ago

From: https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html

debug
info.*
logging.charset.console
logging.charset.file
logging.config
logging.exception-conversion-word
logging.file.name
logging.file.path
logging.group.*
logging.level.*
logging.log4j2.config.override
logging.logback.rollingpolicy.clean-history-on-start
logging.logback.rollingpolicy.file-name-pattern
logging.logback.rollingpolicy.max-file-size
logging.logback.rollingpolicy.max-history
logging.logback.rollingpolicy.total-size-cap
logging.pattern.console
logging.pattern.dateformat
logging.pattern.file
logging.pattern.level
logging.register-shutdown-hook
logging.threshold.console
logging.threshold.file
spring.aop.auto
spring.aop.proxy-target-class
spring.application.admin.enabled
spring.application.admin.jmx-name
spring.application.name
spring.autoconfigure.exclude
spring.banner.charset
spring.banner.location
spring.beaninfo.ignore
spring.codec.log-request-details
spring.codec.max-in-memory-size
spring.config.activate.on-cloud-platform
spring.config.activate.on-profile
spring.config.additional-location
spring.config.import
spring.config.location
spring.config.name
spring.info.build.encoding
spring.info.build.location
spring.info.git.encoding
spring.info.git.location
spring.jmx.default-domain
spring.jmx.enabled
spring.jmx.registration-policy
spring.jmx.server
spring.jmx.unique-names
spring.lifecycle.timeout-per-shutdown-phase
spring.main.allow-bean-definition-overriding
spring.main.allow-circular-references
spring.main.banner-mode
spring.main.cloud-platform
spring.main.lazy-initialization
spring.main.log-startup-info
spring.main.register-shutdown-hook
spring.main.sources
spring.main.web-application-type
spring.mandatory-file-encoding
spring.messages.always-use-message-format
spring.messages.basename
spring.messages.cache-duration
spring.messages.encoding
spring.messages.fallback-to-system-locale
spring.messages.use-code-as-default-message
spring.output.ansi.enabled
spring.pid.fail-on-write-error
spring.pid.file
spring.profiles.active
spring.profiles.default
spring.profiles.group.*
spring.profiles.include
spring.quartz.auto-startup
spring.quartz.jdbc.comment-prefix
spring.quartz.jdbc.initialize-schema
spring.quartz.jdbc.platform
spring.quartz.jdbc.schema
spring.quartz.job-store-type
spring.quartz.overwrite-existing-jobs
spring.quartz.properties.*
spring.quartz.scheduler-name
spring.quartz.startup-delay
spring.quartz.wait-for-jobs-to-complete-on-shutdown
spring.reactor.debug-agent.enabled
spring.reactor.netty.shutdown-quiet-period
spring.ssl.bundle.jks.*
spring.ssl.bundle.pem.*
spring.task.execution.pool.allow-core-thread-timeout
spring.task.execution.pool.core-size
spring.task.execution.pool.keep-alive
spring.task.execution.pool.max-size
spring.task.execution.pool.queue-capacity
spring.task.execution.shutdown.await-termination
spring.task.execution.shutdown.await-termination-period
spring.task.execution.thread-name-prefix
spring.task.scheduling.pool.size
spring.task.scheduling.shutdown.await-termination
spring.task.scheduling.shutdown.await-termination-period
spring.task.scheduling.thread-name-prefix
spring.cache.cache-names
spring.cache.caffeine.spec
spring.cache.couchbase.expiration
spring.cache.infinispan.config
spring.cache.jcache.config
spring.cache.jcache.provider
spring.cache.redis.cache-null-values
spring.cache.redis.enable-statistics
spring.cache.redis.key-prefix
spring.cache.redis.time-to-live
spring.cache.redis.use-key-prefix
spring.cache.type
spring.mail.default-encoding
spring.mail.host
spring.mail.jndi-name
spring.mail.password
spring.mail.port
spring.mail.properties.*
spring.mail.protocol
spring.mail.test-connection
spring.mail.username
spring.sendgrid.api-key
spring.sendgrid.proxy.host
spring.sendgrid.proxy.port
spring.gson.date-format
spring.gson.disable-html-escaping
spring.gson.disable-inner-class-serialization
spring.gson.enable-complex-map-key-serialization
spring.gson.exclude-fields-without-expose-annotation
spring.gson.field-naming-policy
spring.gson.generate-non-executable-json
spring.gson.lenient
spring.gson.long-serialization-policy
spring.gson.pretty-printing
spring.gson.serialize-nulls
spring.jackson.constructor-detector
spring.jackson.date-format
spring.jackson.default-leniency
spring.jackson.default-property-inclusion
spring.jackson.deserialization.*
spring.jackson.generator.*
spring.jackson.locale
spring.jackson.mapper.*
spring.jackson.parser.*
spring.jackson.property-naming-strategy
spring.jackson.serialization.*
spring.jackson.time-zone
spring.jackson.visibility.*
spring.jta.atomikos.connectionfactory.borrow-connection-timeout
spring.jta.atomikos.connectionfactory.ignore-session-transacted-flag
spring.jta.atomikos.connectionfactory.local-transaction-mode
spring.jta.atomikos.connectionfactory.maintenance-interval
spring.jta.atomikos.connectionfactory.max-idle-time
spring.jta.atomikos.connectionfactory.max-lifetime
spring.jta.atomikos.connectionfactory.max-pool-size
spring.jta.atomikos.connectionfactory.min-pool-size
spring.graphql.cors.allow-credentials
spring.graphql.cors.allowed-headers
spring.graphql.cors.allowed-methods
spring.graphql.cors.allowed-origin-patterns
spring.graphql.cors.allowed-origins
spring.graphql.cors.exposed-headers
spring.graphql.cors.max-age
spring.graphql.graphiql.enabled
spring.graphql.graphiql.path
spring.graphql.path
spring.graphql.rsocket.mapping
spring.graphql.schema.file-extensions
spring.graphql.schema.introspection.enabled
spring.graphql.schema.locations
spring.graphql.schema.printer.enabled
spring.graphql.websocket.connection-init-timeout
spring.graphql.websocket.path
spring.hateoas.use-hal-as-default-json-media-type
spring.jersey.application-path
spring.jersey.filter.order
spring.jersey.init.*
spring.jersey.servlet.load-on-startup
spring.jersey.type
spring.mvc.async.request-timeout
spring.mvc.contentnegotiation.favor-parameter
spring.mvc.contentnegotiation.media-types.*
spring.mvc.contentnegotiation.parameter-name
spring.mvc.converters.preferred-json-mapper
spring.mvc.dispatch-options-request
spring.mvc.dispatch-trace-request
spring.mvc.format.date
spring.mvc.format.date-time
spring.mvc.format.time
spring.mvc.formcontent.filter.enabled
spring.mvc.hiddenmethod.filter.enabled
spring.mvc.log-request-details
spring.mvc.log-resolved-exception
spring.mvc.message-codes-resolver-format
spring.mvc.pathmatch.matching-strategy
spring.mvc.problemdetails.enabled
spring.mvc.publish-request-handled-events
spring.mvc.servlet.load-on-startup
spring.mvc.servlet.path
spring.mvc.static-path-pattern
spring.mvc.throw-exception-if-no-handler-found
spring.mvc.view.prefix
spring.mvc.view.suffix
spring.mvc.webjars-path-pattern
spring.netty.leak-detection
spring.servlet.multipart.enabled
spring.servlet.multipart.file-size-threshold
spring.servlet.multipart.location
spring.servlet.multipart.max-file-size
spring.servlet.multipart.max-request-size
spring.servlet.multipart.resolve-lazily
spring.session.hazelcast.flush-mode
spring.session.hazelcast.map-name
spring.session.hazelcast.save-mode
spring.session.jdbc.cleanup-cron
spring.session.jdbc.flush-mode
spring.session.jdbc.initialize-schema
spring.session.jdbc.platform
spring.session.jdbc.save-mode
spring.session.jdbc.schema
spring.session.jdbc.table-name
spring.session.mongodb.collection-name
spring.session.redis.cleanup-cron
spring.session.redis.configure-action
spring.session.redis.flush-mode
spring.session.redis.namespace
spring.session.redis.repository-type
spring.session.redis.save-mode
spring.session.servlet.filter-dispatcher-types
spring.session.servlet.filter-order
spring.session.timeout
spring.web.locale
spring.web.locale-resolver
spring.web.resources.add-mappings
spring.web.resources.cache.cachecontrol.cache-private
spring.web.resources.cache.cachecontrol.cache-public
spring.web.resources.cache.cachecontrol.max-age
spring.web.resources.cache.cachecontrol.must-revalidate
spring.web.resources.cache.cachecontrol.no-cache
spring.web.resources.cache.cachecontrol.no-store
spring.web.resources.cache.cachecontrol.no-transform
spring.web.resources.cache.cachecontrol.proxy-revalidate
spring.web.resources.cache.cachecontrol.s-max-age
spring.web.resources.cache.cachecontrol.stale-if-error
spring.web.resources.cache.cachecontrol.stale-while-revalidate
spring.web.resources.cache.period
spring.web.resources.cache.use-last-modified
spring.web.resources.chain.cache
spring.web.resources.chain.compressed
spring.web.resources.chain.enabled
spring.web.resources.chain.strategy.content.enabled
spring.web.resources.chain.strategy.content.paths
spring.web.resources.chain.strategy.fixed.enabled
spring.web.resources.chain.strategy.fixed.paths
spring.web.resources.chain.strategy.fixed.version
spring.web.resources.static-locations
spring.webflux.base-path
spring.webflux.format.date
spring.webflux.format.date-time
spring.webflux.format.time
spring.webflux.hiddenmethod.filter.enabled
spring.webflux.multipart.file-storage-directory
spring.webflux.multipart.headers-charset
spring.webflux.multipart.max-disk-usage-per-part
spring.webflux.multipart.max-headers-size
spring.webflux.multipart.max-in-memory-size
spring.webflux.multipart.max-parts
spring.webflux.problemdetails.enabled
spring.webflux.static-path-pattern
spring.webflux.webjars-path-pattern
spring.freemarker.allow-request-override
spring.freemarker.allow-session-override
spring.freemarker.cache
spring.freemarker.charset
spring.freemarker.check-template-location
spring.freemarker.content-type
spring.freemarker.enabled
spring.freemarker.expose-request-attributes
spring.freemarker.expose-session-attributes
spring.freemarker.expose-spring-macro-helpers
spring.freemarker.prefer-file-system-access
spring.freemarker.prefix
spring.freemarker.request-context-attribute
spring.freemarker.settings.*
spring.freemarker.suffix
spring.freemarker.template-loader-path
spring.freemarker.view-names
spring.groovy.template.allow-request-override
spring.groovy.template.allow-session-override
spring.groovy.template.cache
spring.groovy.template.charset
spring.groovy.template.check-template-location
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
spring.groovy.template.content-type
spring.groovy.template.enabled
spring.groovy.template.expose-request-attributes
spring.groovy.template.expose-session-attributes
spring.groovy.template.expose-spring-macro-helpers
spring.groovy.template.prefix
jabrena commented 1 year ago

https://twitter.com/juanantoniobm/status/1681315229895135233?s=20

jabrena commented 1 year ago

Not possible at the moment