Amazon EMRログファイルの表示 - Amazon EMR

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon EMRログファイルの表示

Amazon EMRと Hadoop はどちらも、クラスターのステータスを報告するログファイルを生成します。デフォルトで、ログファイルは /mnt/var/log/ ディレクトリのプライマリノードに出力されます。クラスターの起動時に設定した方法に応じて、これらのログは Amazon S3 にもアーカイブされることがあり、グラフィカルなデバッグツールを使用して表示できる場合があります。

プライマリノードには、さまざまな種類のログが書き込まれます。Amazon は、ステップ、ブートストラップアクション、インスタンス状態ログをEMR書き込みます。Apache Hadoop は、ジョブ、タスク、およびタスク試行の処理を報告するログを出力します。また、Hadoop は、デーモンのログも記録します。Hadoop によって書き込まれたログの詳細については、http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html を参照してください。

プライマリノードのログファイルを表示する

次の表は、プライマリノードで確認できるログファイルの一部を示しています。

ロケーション 説明

/emr/instance-controller/log/bootstrap-actions

ブートストラップアクションの処理中に出力されるログ。

/mnt/var/log/hadoop-state-pusher

Hadoop の状態プッシャープロセスで出力されるログ。

/emr/instance-controller/log

インスタンスコントローラログ。

/emr/instance-state

インスタンス状態ログ。これにはCPU、ノードの 、メモリ状態、ガベージコレクタースレッドに関する情報が含まれます。

/emr/service-nanny

サービスナニープロセスで出力されるログ

/mnt/var/log/application

Hadoop、Spark、Hive などのアプリケーションに固有のログ。

/mnt/var/log/hadoop/steps/N

ステップの処理に関する情報が含まれステップログ。の値 N は、Amazon によってstepId割り当てられた を示しますEMR。たとえば、クラスターに 2 つのステップ、s-1234ABCDEFGHs-5678IJKLMNOP があるとします。最初のステップは /mnt/var/log/hadoop/steps/s-1234ABCDEFGH/ に配置され、2 番目のステップは /mnt/var/log/hadoop/steps/s-5678IJKLMNOP/ に配置されます。

Amazon によって書き込まれたステップログEMRは次のとおりです。

  • controller— ステップの処理に関する情報。ロード中にステップが失敗した場合は、このログでスタックトレースを見つけることができます。

  • syslog— ステップでの Hadoop ジョブの実行を記録します。

  • stderr— Hadoop がステップを処理している間の Hadoop の標準エラーチャネル。

  • stdout— Hadoop がステップを処理している間の Hadoop の標準出力チャネル。

AWS CLIでプライマリノードのログファイルを表示するには
  1. の説明に従って、 SSHを使用してプライマリノードに接続しますを使用して Amazon EMRクラスターのプライマリノードに接続する SSH

  2. 表示するログファイル情報が保存されているディレクトリに移動します。前述の表は、使用できるログファイルの種類とその保存場所の一覧です。次の例は、ID が s-1234ABCDEFGH のステップログに移動するコマンドを示しています。

    cd /mnt/var/log/hadoop/steps/s-1234ABCDEFGH/
  3. 任意のファイルビューワーを使用してログファイルを表示します。次の例では、Linux の less コマンドを使用して controller ログファイルを表示します。

    less controller

Amazon S3 にアーカイブされたログファイルを表示する

デフォルトでは、コンソールを使用して起動された Amazon EMRクラスターは、ログファイルを自動的に Amazon S3 にアーカイブします。独自のログのパスを指定したり、コンソールが自動的にログのパスを生成することを許可したりできます。CLI または を使用して起動されたクラスターの場合API、Amazon S3 ログアーカイブを手動で設定する必要があります。

Amazon EMRがログファイルを Amazon S3 にアーカイブするように設定されている場合、ファイルは指定した S3 の場所に、/ に保存されます。cluster-id/ フォルダ。ここで cluster-id はクラスター ID です。

Amazon S3 で見つかるログファイルの一部を次の表に示します。

ロケーション 説明

/cluster-id/node/

ブートストラップアクション、インスタンスの状態、ノードのアプリケーションログを含むノードログ。各ノードのログは、そのノードのEC2インスタンスの識別子でラベル付けされたフォルダに保存されます。

/cluster-id/node/instance-id/application

アプリケーションに関連付けられた各アプリケーションまたはデーモンにより作成されたログ。たとえば、Hive サーバーログは cluster-id/node/instance-id/hive/hive-server.log にあります。

/cluster-id/steps/step-id/

ステップの処理に関する情報が含まれステップログ。の値 step-id は、Amazon によって割り当てられたステップ ID を示しますEMR。たとえば、クラスターに 2 つのステップ、s-1234ABCDEFGHs-5678IJKLMNOP があるとします。最初のステップは /mnt/var/log/hadoop/steps/s-1234ABCDEFGH/ に配置され、2 番目のステップは /mnt/var/log/hadoop/steps/s-5678IJKLMNOP/ に配置されます。

Amazon によって書き込まれたステップログEMRは次のとおりです。

  • controller— ステップの処理に関する情報。ロード中にステップが失敗した場合は、このログでスタックトレースを見つけることができます。

  • syslog— ステップでの Hadoop ジョブの実行を記録します。

  • stderr— Hadoop がステップを処理している間の Hadoop の標準エラーチャネル。

  • stdout— Hadoop がステップを処理している間の Hadoop の標準出力チャネル。

/cluster-id/コンテナ

アプリケーションコンテナログ。各YARNアプリケーションのログは、これらの場所に保存されます。

/cluster-id/hadoop-mapreduce/

設定の詳細とジョブの MapReduceジョブ履歴に関する情報を含むログ。

Amazon S3 コンソールを使用して Amazon S3 にアーカイブされたログファイルを表示するには
  1. にサインイン AWS Management Console し、 で Amazon S3 コンソールを開きますhttps://console.aws.amazon.com/s3/

  2. Amazon S3 にログファイルをアーカイブするようにクラスターを設定したときに指定した S3 バケットを開きます。

  3. 表示する情報を含むログファイルに移動します。前述の表は、使用できるログファイルの種類とその保存場所の一覧です。

  4. ログファイルオブジェクトをダウンロードして表示します。手順については、「オブジェクトのダウンロード」を参照してください。