Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Controller mapping are not logging at startup

enter image description hereI have a requirement to upgrade the existing code which runs on jdk 8 to jdk 11 After upgrading it the controller mappings are not showing up during startup.In this application we have defined some inbound gateways for integration and we have also defined few rest controllers, They where getting logging when it was on jdk 1.8 but they are not getting logged after i upgraded.Is there any way those logs are printed. we are using spring boot 2.1.0 Release, jdk 11 spring integration. The first image is the the code running on the jdk 8 and the second image is the one running on jdk 11. Here is pomfile which we are using http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0

<groupId>com.oms.integration</groupId>
<artifactId>oms-integration</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>oms-integration</name>
<description>Integration between OMS and other systems</description>

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.0.RELEASE</version>
    <relativePath /> <!-- lookup parent from repository -->
</parent>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <java.version>11</java.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-integration</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.integration</groupId>
        <artifactId>spring-integration-http</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.integration</groupId>
        <artifactId>spring-integration-xml</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-configuration-processor</artifactId>
        <optional>true</optional>
    </dependency>
    <dependency>
        <groupId>xmlunit</groupId>
        <artifactId>xmlunit</artifactId>
        <version>1.5</version>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <release>${java.version}</release>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>org.ow2.asm</groupId>
                    <artifactId>asm</artifactId>
                    <version>6.2</version>
                </dependency>
            </dependencies>
        </plugin>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

enter image description here

like image 318
Sid Avatar asked Nov 15 '18 21:11

Sid


People also ask

How to enable logging in Spring application?

Alternatively, you can enable a “trace” mode by starting your application with a --trace flag (or trace=true in your application. properties ). This will enable trace logging for a selection of core loggers (embedded container, Hibernate schema generation and the whole Spring portfolio).

Which is the default logging file in Spring Boot?

Spring Boot uses Commons Logging for all internal logging, but leaves the underlying log implementation open. Default configurations are provided for Java Util Logging, Log4J, Log4J2 and Logback.

What is 404 error in Spring boot?

As with any web application or website, Spring MVC returns the HTTP 404 response code when the requested resource can't be found.

How to write log in Spring Boot?

To make Spring Boot write its log to disk, set the path and filename. With this configuration, Spring Boot will write to the console and also to a log file called spring. log , at the path you specify.


1 Answers

If you also upgrade Spring Boot, which means all other dependencies in your project as well, then you can’t compare apples with apples since it is already not just Java switching.

Looks like starting with version 5.1 Spring Framework doesn’t log those endpoints under INFO. Consider to configure DEBUG for the org.springframework.web category and you’ll them again.

Your problem was that you didn’t share with us important information about dependencies version mismatch...

UPDATE

Sorry, it must be TRACE. This is a relevant piece of code from the AbstractHandlerMethodMapping:

if (logger.isTraceEnabled()) {
            logger.trace("Mapped " + methods.size() + " handler method(s) for " + userType + ": " + methods);
        }
like image 155
Artem Bilan Avatar answered Oct 05 '22 09:10

Artem Bilan