Skip to content

Remove System.out calls in PreComputeFieldFeature #30571

@bclozel

Description

@bclozel

While logging information at the System.out level in the PreComputeFieldFeature was a conscious choice until oracle/graal#4669 was implemented, it seems that the information displayed is very verbose:

 - org.springframework.aot.nativex.feature.PreComputeFieldFeature
Field org.apache.commons.logging.LogAdapter#log4jSpiPresent set to true at build time
Field org.apache.commons.logging.LogAdapter#log4jSlf4jProviderPresent set to true at build time
Field org.apache.commons.logging.LogAdapter#slf4jSpiPresent set to true at build time
Field org.apache.commons.logging.LogAdapter#slf4jApiPresent set to true at build time
Field org.springframework.core.NativeDetector#imageCode set to true at build time
Field org.springframework.core.KotlinDetector#kotlinPresent set to false at build time
Field org.springframework.core.KotlinDetector#kotlinReflectPresent set to false at build time
Field org.springframework.format.support.DefaultFormattingConversionService#jsr354Present set to false at build time
Field org.springframework.cglib.core.AbstractClassGenerator#imageCode set to true at build time
Field org.springframework.boot.logging.log4j2.Log4J2LoggingSystem$Factory#PRESENT set to false at build time
Field org.springframework.web.reactive.config.WebFluxConfigurationSupport#jakartaValidatorPresent set to false at build time
Field org.springframework.http.converter.json.Jackson2ObjectMapperBuilder#jackson2XmlPresent set to false at build time
Field org.springframework.data.util.NullableWrapperConverters#GUAVA_PRESENT set to false at build time
Field org.springframework.data.util.NullableWrapperConverters#SCALA_PRESENT set to false at build time
Field org.springframework.data.util.NullableWrapperConverters#VAVR_PRESENT set to false at build time
SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See https://www.slf4j.org/codes.html#noProviders for further details.
Field org.springframework.core.ReactiveAdapterRegistry#reactorPresent set to true at build time
Field org.springframework.core.ReactiveAdapterRegistry#rxjava3Present set to false at build time
Field org.springframework.core.ReactiveAdapterRegistry#kotlinCoroutinesPresent set to false at build time
Field org.springframework.core.ReactiveAdapterRegistry#mutinyPresent set to false at build time
Field org.springframework.data.repository.util.QueryExecutionConverters#VAVR_PRESENT set to false at build time
Field org.springframework.graphql.data.method.annotation.support.AnnotatedControllerConfigurer#springDataPresent set to true at build time
Field org.springframework.graphql.data.method.annotation.support.AnnotatedControllerConfigurer#springSecurityPresent set to false at build time
Field org.springframework.graphql.data.method.annotation.support.AnnotatedControllerConfigurer#beanValidationPresent set to false at build time
Field org.springframework.boot.logging.logback.LogbackLoggingSystem$Factory#PRESENT set to true at build time
Field org.springframework.boot.logging.java.JavaLoggingSystem$Factory#PRESENT set to true at build time
Field org.springframework.data.convert.JMoleculesConverters#JMOLECULES_PRESENT set to false at build time
Field org.springframework.data.util.ReactiveWrappers#PROJECT_REACTOR_PRESENT set to true at build time
Field org.springframework.data.util.ReactiveWrappers#RXJAVA3_PRESENT set to false at build time
Field org.springframework.data.util.ReactiveWrappers#KOTLIN_COROUTINES_PRESENT set to false at build time
Field org.springframework.data.util.ReactiveWrappers#MUTINY_PRESENT set to false at build time
Field org.springframework.data.repository.util.ReactiveWrapperConverters#RXJAVA3_PRESENT set to false at build time
Field org.springframework.data.repository.util.ReactiveWrapperConverters#REACTOR_PRESENT set to true at build time
Field org.springframework.data.repository.util.ReactiveWrapperConverters#KOTLIN_COROUTNES_PRESENT set to false at build time
Field org.springframework.data.repository.util.ReactiveWrapperConverters#MUTINY_PRESENT set to false at build time
Field org.springframework.web.context.support.StandardServletEnvironment#jndiPresent set to true at build time
Field org.springframework.boot.logging.logback.LogbackLoggingSystemProperties#JBOSS_LOGGING_PRESENT set to false at build time
Field org.springframework.context.event.ApplicationListenerMethodAdapter#reactiveStreamsPresent set to true at build time
Field org.springframework.data.querydsl.QuerydslUtils#QUERY_DSL_PRESENT set to false at build time
Field org.springframework.web.reactive.socket.server.support.HandshakeWebSocketService#tomcatWsPresent set to false at build time
Field org.springframework.web.reactive.socket.server.support.HandshakeWebSocketService#jettyWsPresent set to false at build time
Field org.springframework.web.reactive.socket.server.support.HandshakeWebSocketService#undertowWsPresent set to false at build time
Field org.springframework.web.reactive.socket.server.support.HandshakeWebSocketService#reactorNettyPresent set to true at build time
Field org.springframework.web.reactive.socket.server.support.HandshakeWebSocketService#reactorNetty2Present set to false at build time
Field org.springframework.web.reactive.function.client.DefaultWebClientBuilder#reactorNettyClientPresent set to true at build time
Field org.springframework.web.reactive.function.client.DefaultWebClientBuilder#reactorNetty2ClientPresent set to false at build time
Field org.springframework.web.reactive.function.client.DefaultWebClientBuilder#jettyClientPresent set to false at build time
Field org.springframework.web.reactive.function.client.DefaultWebClientBuilder#httpComponentsClientPresent set to false at build time
Field org.springframework.data.repository.core.support.ReactiveRepositoryFactorySupport$RxJavaOneConversionSetup#REACTIVE_STREAMS_PRESENT set to true at build time
Field org.springframework.graphql.data.query.JsonKeysetCursorStrategy#jackson2Present set to true at build time
Field org.springframework.boot.autoconfigure.web.format.WebConversionService#JSR_354_PRESENT set to false at build time
Field reactor.netty.internal.util.Metrics#isMicrometerAvailable set to true at build time
Field reactor.netty.internal.util.Metrics#isTracingAvailable set to true at build time
Field reactor.netty.resources.DefaultLoopIOUring#isIoUringAvailable set to false at build time
ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console...
Field reactor.netty.resources.DefaultLoopEpoll#isEpollAvailable set to false at build time
Field reactor.netty.resources.DefaultLoopKQueue#isKqueueAvailable set to false at build time
Field org.springframework.graphql.data.method.annotation.support.BatchLoaderHandlerMethod#springSecurityPresent set to false at build time
Field org.springframework.boot.actuate.endpoint.invoker.cache.CachingOperationInvoker#IS_REACTOR_PRESENT set to true at build time
Field org.springframework.boot.actuate.endpoint.web.annotation.DiscoveredWebOperation#REACTIVE_STREAMS_PRESENT set to true at build time
Field org.springframework.boot.actuate.endpoint.invoke.reflect.OperationMethodParameter#jsr305Present set to false at build time
Field org.springframework.web.reactive.socket.WebSocketMessage#reactorNetty2Present set to false at build time
Field reactor.netty.http.server.HAProxyMessageReader#isProxyProtocolAvailable set to false at build time
Field org.springframework.web.client.RestTemplate#romePresent set to false at build time
Field org.springframework.web.client.RestTemplate#jaxb2Present set to false at build time
Field org.springframework.web.client.RestTemplate#jackson2Present set to true at build time
Field org.springframework.web.client.RestTemplate#jackson2XmlPresent set to false at build time
Field org.springframework.web.client.RestTemplate#jackson2SmilePresent set to false at build time
Field org.springframework.web.client.RestTemplate#jackson2CborPresent set to false at build time
Field org.springframework.web.client.RestTemplate#gsonPresent set to false at build time
Field org.springframework.web.client.RestTemplate#jsonbPresent set to false at build time
Field org.springframework.web.client.RestTemplate#kotlinSerializationCborPresent set to false at build time
Field org.springframework.web.client.RestTemplate#kotlinSerializationJsonPresent set to false at build time
Field org.springframework.web.client.RestTemplate#kotlinSerializationProtobufPresent set to false at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#jackson2Present set to true at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#jackson2SmilePresent set to false at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#jaxb2Present set to false at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#protobufPresent set to false at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#synchronossMultipartPresent set to false at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#nettyByteBufPresent set to true at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#netty5BufferPresent set to false at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#kotlinSerializationCborPresent set to false at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#kotlinSerializationJsonPresent set to false at build time
Field org.springframework.http.codec.support.BaseDefaultCodecs#kotlinSerializationProtobufPresent set to false at build time
Field org.springframework.graphql.execution.SecurityContextThreadLocalAccessor#springSecurityPresent set to false at build time

Unless we find a way to activate those logs with a debug flag, we should probably silence this as it doesn't provide much value to users and hasn't been helpful in the past for investigating on issues.

Metadata

Metadata

Assignees

Labels

in: coreIssues in core modules (aop, beans, core, context, expression)theme: aotAn issue related to Ahead-of-time processingtype: enhancementA general enhancement

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions