翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS Glue ジョブの連続ログ記録の有効化
連続ログ記録は、 AWS Glue コンソールまたは AWS Command Line Interface () を使用して有効にできますAWS CLI。
新しいジョブを作成するとき、既存のジョブを編集するとき、または を通じて有効にするときに、連続ログ記録を有効にできます AWS CLI。
Amazon CloudWatch ロググループ名、AWS Glueジョブ実行 ID ドライバー/エグゼキューター ID の前の CloudWatch ログストリームプレフィックス、ログメッセージのログ変換パターンなどのカスタム設定オプションを指定することもできます。これらの設定は、異なる有効期限ポリシーを持つカスタムロググループに集約 CloudWatch ログを設定し、カスタムログストリームのプレフィックスと変換パターンを使用してさらに分析するのに役立ちます。
トピック
の使用 AWS Management Console
次のステップに従ってコンソールを使用して、AWS Glue ジョブを作成または編集するときに連続ログ記録を有効にします。
連続ログ記録を有効にして新しい AWS Glue ジョブを作成するには
にサインイン AWS Management Console し、https://console.aws.amazon.com/glue/
で AWS Glue コンソールを開きます。 -
ナビゲーションペインで、ETL ジョブ を選択します。
-
ビジュアル ETL を選択します。
-
ジョブの詳細 タブで、プロパティの詳細 セクションを展開します。
-
「継続的なログ記録」で「 でログを有効にする CloudWatch」を選択します。
既存の AWS Glue ジョブに対して連続ログ記録を有効にするには
https://console.aws.amazon.com/glue/
で AWS Glue コンソールを開きます。 -
ナビゲーションペインで ジョブを選択します。
-
[Jobs (ジョブ)] リストから既存のジョブを選択します。
-
[Action (アクション)]、[Edit job (ジョブの編集)] の順に選択します。
-
ジョブの詳細 タブで、プロパティの詳細 セクションを展開します。
-
「連続ログ記録」で「 でログを有効にする CloudWatch」を選択します。
の使用 AWS CLI
連続ログ記録を有効にするには、 AWS Glue ジョブにジョブパラメータを渡します。他のジョブパラメータと同様の次の特別なAWS Glueジョブパラメータを渡します。詳細については、「AWS Glue ジョブのパラメータ」を参照してください。
'--enable-continuous-cloudwatch-log': 'true'
カスタム Amazon CloudWatch ロググループ名を指定できます。指定しない場合、デフォルトのロググループ名は、/aws-glue/jobs/logs-v2/
になります。
'--continuous-log-logGroup': '
custom_log_group_name
'
カスタム Amazon CloudWatch ログストリームプレフィックスを指定できます。指定しない場合、デフォルトのログストリームプレフィックスはジョブ実行 ID になります。
'--continuous-log-logStreamPrefix': '
custom_log_stream_prefix
'
カスタムの連続ロギング変換パターンを指定できます。指定しない場合、デフォルトの変換パターンは %d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n
になります。変換パターンは、ドライバーログとエグゼキューターログにのみ適用されます。AWS Glue の進行状況バーには影響しません。
'--continuous-log-conversionPattern': '
custom_log_conversion_pattern
'
カスタムスクリプトロガーを使用したアプリケーション固有のメッセージのログ記録
AWS Glue ロガーを使用すると、ドライバーログストリームにリアルタイムで送信される、スクリプトのアプリケーション固有のメッセージを記録できます。
Python スクリプトの例を以下に示します。
from awsglue.context import GlueContext from pyspark.context import SparkContext sc = SparkContext() glueContext = GlueContext(sc) logger = glueContext.get_logger() logger.info("info message") logger.warn("warn message") logger.error("error message")
Scala スクリプトの例を以下に示します。
import com.amazonaws.services.glue.log.GlueLogger object GlueApp { def main(sysArgs: Array[String]) { val logger = new GlueLogger logger.info("info message") logger.warn("warn message") logger.error("error message") } }
進行状況バーでのジョブ進行状況の表示
AWS Glue は、JOB_RUN_ID-progress-bar
ログストリームでリアルタイムの進行状況バーを提供して AWS Glue ジョブ実行のステータスを確認します。現時点では、glueContext
を初期化するジョブのみがサポートされています。glueContext
を初期化せずに純粋な Spark ジョブを実行すると、AWS Glue 進行状況バーは表示されません。
進行状況バーでは、以下の進行状況が 5 秒ごとに更新されます。
Stage Number (Stage Name): > (numCompletedTasks + numActiveTasks) / totalNumOfTasksInThisStage]
連続ログ記録によるセキュリティ設定。
CloudWatch ログのセキュリティ設定が有効になっている場合、 AWS Glueは、連続ログに対して次のように という名前のロググループを作成します。
<Log-Group-Name>-<Security-Configuration-Name>
デフォルトのロググループおよびカスタムロググループは次のようになります。
デフォルトの連続ロググループは
/aws-glue/jobs/logs-v2-<
となります。Security-Configuration-Name>
カスタム連続ロググループは
<
となります。custom-log-group-name>
-<Security-Configuration-Name>
CloudWatch Logs でセキュリティ設定を有効にする場合は、IAM logs:AssociateKmsKey
ロールのアクセス許可に を追加する必要があります。そのアクセス許可が含まれていない場合、連続ログ記録は無効になります。また、 CloudWatch ログの暗号化を設定するには、「Amazon Logs ユーザーガイド」の「 を使用したログの CloudWatch ログデータの暗号化 AWS Key Management Service」の手順に従います。 CloudWatch
セキュリティ設定作成の詳細については、「AWS Glue コンソールでのセキュリティ設定の使用」を参照してください。