投稿日: Aug 15, 2023

Amazon EMR Serverless は Amazon EMR のサーバーレスオプションで、クラスターやサーバーの構成、管理、スケーリングを行う必要がありません。そのため、データアナリストやエンジニアは、Apache Spark や Apache Hive といったオープンソースのビッグデータ分析フレームワークを簡単に実行できます。本日より、ドライバーとエグゼキューターのログにきめ細かなログ設定を指定できるようになりました。これにより、Apache Spark ジョブのトラブルシューティングが簡単になります。  

多くの場合、開発者は、監視とデバッグを効果的に行うために、ログを分析してジョブに関する詳細な洞察を得る必要があります。しかし、Spark のデフォルトのログ設定は冗長すぎるため、関連するログエントリを見つけるのが容易ではないことがあります。Spark は Log4j2 を使用してログを設定します。この機能を使用すると、EMR Serverless ジョブの実行ごとに Spark ドライバーとエグゼキューターのログのカスタム Log4j2 設定を指定できます。たとえば、Spark のデフォルトのログレベルを「ERROR」に設定して最小限のログを取得し、コードのログレベルを「INFO」に設定して詳細なログを取得し、デバッグするライブラリのログレベルを「DEBUG」に設定してさらに詳細なログを取得できます。これにより、ログをより適切に分析して有意義な洞察を得ることができます。

この機能は、EMR リリースバージョン 6.8.0 以降および Amazon EMR Serverless を利用可能なすべてのリージョンで利用できます。 詳細については、Log4j2 の設定のページをご覧ください。