Aktivieren der kontinuierlichen Protokollierung für Aufträge in AWS Glue 4.0 und früher - AWS Glue

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Aktivieren der kontinuierlichen Protokollierung für Aufträge in AWS Glue 4.0 und früher

Anmerkung

In AWS Glue 4.0 und früheren Versionen war die kontinuierliche Protokollierung eine verfügbare Funktion. Mit der Einführung von AWS Glue 5.0 können jedoch alle Aufträge in Echtzeit protokolliert werden. Weitere Informationen zu den Protokollierungsfunktionen und Konfigurationsoptionen in AWS Glue 5.0 finden Sie unter Protokollieren von AWS Glue-Aufträgen.

Sie können die kontinuierliche Protokollierung mit der AWS Glue-Konsole oder über die AWS Command Line Interface (AWS CLI) aktivieren.

Sie können die kontinuierliche Protokollierung aktivieren, wenn Sie einen neuen Auftrag erstellen oder einen vorhandenen Auftrag bearbeiten bzw. über die AWS CLI aktivieren.

Sie können auch benutzerdefinierte Konfigurationsoptionen angeben, z. B. den Amazon CloudWatch-Protokollgruppennamen, das CloudWatch-Logstream-Präfix vor der AWS Glue-Auftrags-Ausführungs-ID, die Treiber/Executor-ID und das Protokollkonvertierungsmuster für Protokollmeldungen. Diese Konfigurationen helfen Ihnen, aggregierte Protokolle in benutzerdefinierten CloudWatch-Protokollgruppen mit unterschiedlichen Ablaufrichtlinien einzurichten und sie mit benutzerdefinierten Logstream-Präfixen und Konvertierungsmustern weiter zu analysieren.

Verwendung der AWS-Managementkonsole

Führen Sie diese Schritte durch, um die Konsole zum Aktivieren der kontinuierlichen Protokollierung beim Erstellen oder Bearbeiten eines AWS Glue-Auftrags zu verwenden.

So erstellen Sie einen neuen AWS Glue-Auftrag mit kontinuierlicher Protokollierung
  1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die AWS Glue-Konsole unter https://console.aws.amazon.com/glue/.

  2. Wählen Sie im Navigationsbereich die Option ETL-Aufträge aus.

  3. Wählen Sie Visual ETL.

  4. Erweitern Sie auf der Registerkarte Auftragsdetails den Abschnitt Erweiterte Eigenschaften.

  5. Wählen Sie unter Kontinuierliche Protokollierung die Option Protokolle in CloudWatch aktivieren aus.

So aktivieren Sie die kontinuierliche Protokollierung für einen AWS Glue-Auftrag
  1. Öffnen Sie die AWS Glue-Konsole unter https://console.aws.amazon.com/glue/.

  2. Wählen Sie im Navigationsbereich die Option Jobs (Aufträge) aus.

  3. Wählen Sie einen Auftrag in der Liste Jobs (Aufträge) aus.

  4. Wählen Sie Action (Aktion), Edit job (Auftrag bearbeiten) aus.

  5. Erweitern Sie auf der Registerkarte Auftragsdetails den Abschnitt Erweiterte Eigenschaften.

  6. Wählen Sie unter Kontinuierliche Protokollierung die Option Protokolle in CloudWatch aktivieren aus.

Verwendung der AWS CLI

Um die kontinuierliche Protokollierung zu aktivieren, übergeben Sie die Auftragsparameter an einen AWS Glue-Auftrag. Übergeben Sie die folgenden speziellen Auftragsparameter auf die gleiche Weise wie andere AWS Glue-Auftragsparameter. Weitere Informationen finden Sie unter Verwenden von Auftragsparametern in AWS Glue-Jobs.

'--enable-continuous-cloudwatch-log': 'true'

Sie können einen benutzerdefinierten Amazon-CloudWatch-Protokollgruppennamen angeben. Sofern nicht angegeben, lautet der Standardname der Protokollgruppe /aws-glue/jobs/logs-v2.

'--continuous-log-logGroup': 'custom_log_group_name'

Sie können ein benutzerdefiniertes Amazon-CloudWatch-Logstream-Präfix angeben. Sofern nicht angegeben, ist das standardmäßige Logstream-Präfix die Auftragsausführungs-ID.

'--continuous-log-logStreamPrefix': 'custom_log_stream_prefix'

Sie können ein benutzerdefiniertes Konvertierungsmuster für die kontinuierliche Protokollierung angeben. Sofern nicht angegeben, ist das Standardkonvertierungsmuster %d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n. Beachten Sie, dass das Konvertierungsmuster nur für Treiberprotokolle und Executor-Protokolle gilt. Dies wirkt sich nicht auf die AWS Glue-Fortschrittsleiste aus.

'--continuous-log-conversionPattern': 'custom_log_conversion_pattern'

Protokollieren von anwendungsspezifischen Meldungen mit dem benutzerdefinierten Skript-Logger

Sie können den AWS Glue-Logger verwenden, um alle anwendungsspezifischen Meldungen im Skript zu protokollieren, die in Echtzeit an den Protokoll-Stream des Treibers gesendet werden.

Das folgende Beispiel zeigt ein Python-Skript.

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")

Das folgende Beispiel zeigt ein Scala-Skript.

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") } }

Aktivieren des Fortschrittsbalkens zum Anzeigen des Auftragsfortschritts

AWS Glue stellt unter dem JOB_RUN_ID-progress-bar-Protokoll-Stream einen Echtzeit-Fortschrittsbalken bereit, mit dem der AWS Glue-Auftragsausführungsstatus überwacht werden kann. Derzeit unterstützt er nur Aufträge, die glueContext initialisieren. Wenn Sie einen reinen Spark-Auftrag ausführen, ohne glueContext zu initialisieren, wird der AWS Glue-Fortschrittsbalken nicht angezeigt.

Der Fortschrittsbalken wird alle 5 Sekunden aktualisiert.

Stage Number (Stage Name): > (numCompletedTasks + numActiveTasks) / totalNumOfTasksInThisStage]

Sicherheitskonfiguration mit kontinuierlicher Protokollierung

Wenn eine Sicherheitskonfiguration für CloudWatch-Protokolle aktiviert ist, erstellt AWS Glue eine Protokollgruppe, die wie folgt für fortlaufende Protokolle benannt ist:

<Log-Group-Name>-<Security-Configuration-Name>

Die Standard- und benutzerdefinierten Protokollgruppen lauten wie folgt:

  • Die standardmäßige fortlaufende Protokollgruppe lautet /aws-glue/jobs/error-<Security-Configuration-Name>

  • Die benutzerdefinierte fortlaufende Protokollgruppe lautet <custom-log-group-name>-<Security-Configuration-Name>

Sie müssen logs:AssociateKmsKey zu Ihren IAM-Rollenberechtigungen hinzufügen, wenn Sie eine Sicherheitskonfiguration mit CloudWatch Logs aktivieren. Wenn diese Berechtigung nicht enthalten ist, wird die fortlaufende Protokollierung deaktiviert. Um die Verschlüsselung für die CloudWatch Logs zu konfigurieren, befolgen Sie die Anweisungen unter Encrypt Log Data in CloudWatch Logs Using AWS Key Management Service (Protokolldaten in CloudWatch Logs mithilfe von AWS Key Management Service verschlüsseln) im Benutzerhandbuch für Amazon CloudWatch Logs.

Weitere Informationen zum Erstellen einer Sicherheitskonfiguration finden Sie hier: Verwalten von Sicherheitskonfigurationen in der AWS Glue-Konsole.

Anmerkung

Es können zusätzliche Gebühren anfallen, wenn Sie die Protokollierung aktivieren und zusätzliche CloudWatch-Protokollereignisse erstellt werden. Weitere Informationen hierzu finden Sie unter Amazon CloudWatch – Preise.