Spring Boot logs: iRAv2 format

Issue:

I have a Spring Boot application with different branches. One of the feature branches suddenly displays logs in iRAv2 format and omits some of the original log messages. No additional logging libraries are used other than the Spring Boot default.

iRAv2 format logs:

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.2.2.RELEASE)

Jan 02 10:34:23 [iRAv2] Starting PresApplication on testhostname with PID 20704 | o.s.boot.StartupInfoLogger:55 
Jan 02 10:34:23 [iRAv2] No active profile set, falling back to default profiles: default | o.s.boot.SpringApplication:651 

Correct format logs:

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.2.2.RELEASE)

2020-01-02 10:37:36.454  INFO 20937 --- [           main] g.c.c.o.l.patientreg.PresApplication     : Starting PresApplication on testhostname with PID 20937
2020-01-02 10:37:36.459  INFO 20937 --- [           main] g.c.c.o.l.patientreg.PresApplication     : No active profile set, falling back to default profiles: default
2020-01-02 10:37:37.435  INFO 20937 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2020-01-02 10:37:37.442  INFO 20937 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2020-01-02 10:37:37.443  INFO 20937 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.29]
2020-01-02 10:37:37.680  INFO 20937 --- [           main] org.apache.jasper.servlet.TldScanner     : At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
2020-01-02 10:37:37.683  INFO 20937 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext

Issue:

I have a Spring Boot application with different branches. One of the feature branches is displaying logs in iRAv2 format and omitting some of the original log messages. No additional logging libraries are used other than the Spring Boot default.

Example of iRAv2 format log:

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.2.2.RELEASE)

Jan 02 10:34:23 [iRAv2] Starting PresApplication on testhostname with PID 20704 | o.s.boot.StartupInfoLogger:55 
Jan 02 10:34:23 [iRAv2] No active profile set, falling back to default profiles: default | o.s.boot.SpringApplication:651 

Example of correct format log:

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.2.2.RELEASE)

2020-01-02 10:37:36.454  INFO 20937 --- [           main] g.c.c.o.l.patientreg.PresApplication     : Starting PresApplication on testhostname with PID 20937
2020-01-02 10:37:36.459  INFO 20937 --- [           main] g.c.c.o.l.patientreg.PresApplication     : No active profile set, falling back to default profiles: default
2020-01-02 10:37:37.435  INFO 20937 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2020-01-02 10:37:37.442  INFO 20937 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2020-01-02 10:37:37.443  INFO 20937 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.29]
2020-01-02 10:37:37.680  INFO 20937 --- [           main] org.apache.jasper.servlet.TldScanner     : At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
2020-01-02 10:37:37.683  INFO 20937 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext

Issue:

I have a Spring Boot application with different branches. One of the feature branches is displaying logs in iRAv2 format instead of the correct format and omitting some of the original log messages. No additional logging libraries are used other than the Spring Boot default. Examples of the iRAv2 and correct formats are shown below.

Answer:

The iRAv2 format logs are likely being caused by the use of the spring.profiles.active JVM system property. This property can be set to iRAv2 in the feature branch, causing the log messages to be formatted in this way. To fix this issue, ensure that the spring.profiles.active property is not set to iRAv2 in the feature branch. Alternatively, the logging format can be explicitly configured in the application.properties file using the logging.pattern.console property.