Java


JAVA.DEBUG.LOG : Debug Warning (Java)

要旨

A method should be replaced with a logging code in production code.

For example, System.out.println() should be not used in production code.

Some operations should not be performed in production code, since they have no effect or have unpredictable effects, or since they might compromise the availability or security of your system.

プロパティ

クラス名 Debug Warning (Java)
日本語クラス名 Debug Warning (Java)
クラス分類 信頼性 (reliability)
ニーモニック JAVA.DEBUG.LOG
カテゴリー
CWE CWE:209 Generation of Error Message Containing Sensitive Information
  CWE:477 Use of Obsolete Function
  CWE:537 Java Runtime Error Message Containing Sensitive Information
CERT-Java CERT-Java:ERR02-J Prevent exceptions while logging data
対応言語 Java で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで有効になっています。チェックを無効にするにはプロジェクト設定ファイル (configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += discard class="Debug Warning (Java)"

import com.juliasoft.julia.extraction.EntryPoint;

public class InadequateCalls {
  public @EntryPoint void check(int k) {
      if (k <= 0)
          System.exit(-1);       // Debug Call (Java) warning issued here 
      else
          System.out.println(k); // Debug Warning (Java) warning issued here 
  }
}

In this example, the programmer should signal the unusual situation in other ways, for instance by throwing an exception or by showing a dialog to the user.

解決法

Verify if the operation is adequate for production code. Remove it or transform it if that is not the case.

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。