ロギング構成

データ処理には、ロギング・プロパティを設定するデフォルトの構成ファイルがあります。

ファイル名はlogging.propertiesです。HDFS上の場所は、data_processing_CLIファイルのhdfsEdpLibPathプロパティによって定義されます。デフォルトの場所は、/user/bdd/edp/libディレクトリです。

このファイルには、次のプロパティがあります。
この表では、ロギング・プロパティをリストしています。
ロギング・プロパティ 意味
handlers ルート・ロガーに追加されたハンドラ・クラス名のカンマ区切リスト。デフォルトのハンドラは、java.util.logging.FileHandlerおよびjava.util.logging.ConsoleHandler (デフォルトのレベルはINFO)です。
java.util.logging.FileHandler.level すべてのFileHandlerインスタンスのログ・レベルを設定します。デフォルトのログ・レベルはFINEです。
java.util.logging.FileHandler.pattern ログ・ファイル名のパターン。デフォルト値は%t/edpLog%u%g.logで、ファイル名がedpLog%u%g.logであることを意味します。これらの意味は、次のとおりです。
  • %uは、同時Javaプロセス間の競合を解決するための一意の番号です。
  • %gは、ローテーションするログを区別するための生成番号です。
%tは、ログ・ファイルが格納される場所としてシステム一時ディレクトリを指定します。
java.util.logging.FileHandler.limit 最大ファイル・サイズ(バイト)。これが0である場合、制限はありません。デフォルト値は1000000 (1MB)です。1MBを超えるログは次のログ・ファイルに繰り越されます。
java.util.logging.FileHandler.count ログ・ファイルのローテーションに使用するログ・ファイルの数。デフォルト値は10000です(最大10,000のログ・ファイルが生成されます)。
java.util.logging.FileHandler.formatter FileHandlerインスタンスに使用するフォーマッタのクラス名。
java.util.logging.ConsoleHandler.level ConsoleHandlerインスタンスのデフォルトのログ・レベルを設定します。
java.util.logging.FileHandler.append FileHandlerが任意の既存のファイルに追加するかどうかを指定します(デフォルトはfalse)。
java.util.logging.ConsoleHandler.formatter ConsoleHandlerインスタンスに使用するフォーマッタのクラス名。
java.util.logging.SimpleFormatter.format ログ・メッセージに使用する書式を指定します。書式構文の詳細は、http://docs.oracle.com/javase/7/docs/api/java/util/logging/SimpleFormatter.htmlを参照してください。

com.oracle.eid = FINE

com.oracle.endeca = FINE

com.oracle.endeca.pdi = INFO

Endecaロガーのデフォルトのロギング・レベルを設定します。

org.eclipse.jetty = WARNING

org.apache.spark.repl.SparkIMain$exprTyper = INFO

org.apache.spark.repl.SparkILoop$SparkILoopInterpreter = INFO

SparkおよびJettyロガーのデフォルトのロギング・レベルを設定します。

FileHandler設定の詳細は、http://docs.oracle.com/javase/7/docs/api/java/util/logging/FileHandler.htmlを参照してください。

ロギング・レベル

ロギング・レベルにより、ログに記録する情報の量を指定します。レベルは(降順で)次のとおりです。
  • SEVERE — 重大な障害を示します。一般に、SEVEREメッセージでは、通常のプログラム実行の妨げになるような、非常に重要なイベントを説明します。
  • WARNING — 潜在的な問題を示します。一般に、WARNINGメッセージでは、エンド・ユーザーまたはシステム管理者が関心を持つ、または潜在的な問題を示すイベントを説明します。
  • INFO — メッセージを情報として提供するメッセージ・レベルです。INFOレベルは、エンド・ユーザーとシステム管理者が理解できる適度に重要なメッセージにのみ使用する必要があります。
  • CONFIG — 静的な構成メッセージのメッセージ・レベルです。CONFIGメッセージの目的は、さまざまな静的構成情報を提供することで、特定の構成に関係する可能性のある問題のデバッグを支援することです。
  • FINE — トレース情報を提供するメッセージ・レベルです。FINE、FINER、FINESTはどれも、比較的詳細な追跡を行うためのものです。これらのレベルのうち、最もボリュームが少ない(かつ最も重要な)トレース・メッセージにFINEを使用する必要があります。
  • FINER — かなり詳細なトレース・メッセージを示します。
  • FINEST — 非常に詳細なトレース・メッセージを示します。FINESTは、最もボリュームの多い詳細な出力に使用する必要があります。
  • ALL — すべてのメッセージをロギングできます。

これらのレベルを選択することによって、関係のない大量のメッセージに圧倒されることなく、関心のあるイベントを適切な精度でモニターできるようになります。最初に開発環境でアプリケーションを設定しているときはFINESTレベルを使用してすべてのメッセージを取得し、本番環境では冗長性の低いレベルに変更することもできます。

生成されたログ・ファイル

データ処理を実行するたびに、データ処理ジョブで起動された各マシンのOSの一時ディレクトリに新しいログ・ファイルが生成されます。データ処理では、次のマシンが関与する可能性があります。
  • クライアント
    • CLIの実行元のマシン
    • Hiveリスナー
    • Studio
  • Oozieワーカー・ノード
  • Sparkワーカー・ノード