All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.sonar.l10n.java.rules.java.S106.html Maven / Gradle / Ivy

The newest version!

Why is this an issue?

In software development, logs serve as a record of events within an application, providing crucial insights for debugging. When logging, it is essential to ensure that the logs are:

  • easily accessible
  • uniformly formatted for readability
  • properly recorded
  • securely logged when dealing with sensitive data

Those requirements are not met if a program directly writes to the standard outputs (e.g., System.out, System.err). That is why defining and using a dedicated logger is highly recommended.

Code examples

The following noncompliant code:

class MyClass {
  public void doSomething() {
    System.out.println("My Message");  // Noncompliant, output directly to System.out without a logger
  }
}

Could be replaced by:

import java.util.logging.Logger;

class MyClass {

  Logger logger = Logger.getLogger(getClass().getName());

  public void doSomething() {
    // ...
    logger.info("My Message");  // Compliant, output via logger
    // ...
  }
}

Resources

Documentation





© 2015 - 2025 Weber Informatics LLC | Privacy Policy