Écrire des messages personnalisés dans CloudWatch Logs - Service géré pour Apache Flink

Le service géré Amazon pour Apache Flink était auparavant connu sous le nom d’Amazon Kinesis Data Analytics pour Apache Flink.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Écrire des messages personnalisés dans CloudWatch Logs

Vous pouvez écrire des messages personnalisés dans le CloudWatch journal de votre application Managed Service for Apache Flink. Pour ce faire, utilisez la bibliothèque log4j d’Apache ou la bibliothèque Simple Logging Facade for Java (SLF4J).

Écrire dans les CloudWatch journaux à l'aide de Log4J

  1. Ajoutez les dépendances suivantes au fichier de pom.xml votre application :

    <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.6.1</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.6.1</version> </dependency>
  2. Incluez l’objet de la bibliothèque :

    import org.apache.logging.log4j.Logger;
  3. Instanciez l’objet Logger en lui transmettant votre classe d’application :

    private static final Logger log = LogManager.getLogger.getLogger(YourApplicationClass.class);
  4. Écrivez dans le journal en utilisant log.info. Un grand nombre de messages sont écrits dans le journal de l’application. Pour faciliter le filtrage de vos messages personnalisés, utilisez le niveau du journal INFO de l’application.

    log.info("This message will be written to the application's CloudWatch log");

L’application écrit un enregistrement dans le journal contenant un message similaire au message suivant :

{ "locationInformation": "com.amazonaws.services.managed-flink.StreamingJob.main(StreamingJob.java:95)", "logger": "com.amazonaws.services.managed-flink.StreamingJob", "message": "This message will be written to the application's CloudWatch log", "threadName": "Flink-DispatcherRestEndpoint-thread-2", "applicationARN": "arn:aws:kinesisanalyticsus-east-1:123456789012:application/test", "applicationVersionId": "1", "messageSchemaVersion": "1", "messageType": "INFO" }

Écrire dans les CloudWatch journaux en utilisant SLF4J

  1. Ajoutez la dépendance suivante au fichier de pom.xml votre application :

    <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.7</version> <scope>runtime</scope> </dependency>
  2. Incluez les objets de la bibliothèque :

    import org.slf4j.Logger; import org.slf4j.LoggerFactory;
  3. Instanciez l’objet Logger en lui transmettant votre classe d’application :

    private static final Logger log = LoggerFactory.getLogger(YourApplicationClass.class);
  4. Écrivez dans le journal en utilisant log.info. Un grand nombre de messages sont écrits dans le journal de l’application. Pour faciliter le filtrage de vos messages personnalisés, utilisez le niveau du journal INFO de l’application.

    log.info("This message will be written to the application's CloudWatch log");

L’application écrit un enregistrement dans le journal contenant un message similaire au message suivant :

{ "locationInformation": "com.amazonaws.services.managed-flink.StreamingJob.main(StreamingJob.java:95)", "logger": "com.amazonaws.services.managed-flink.StreamingJob", "message": "This message will be written to the application's CloudWatch log", "threadName": "Flink-DispatcherRestEndpoint-thread-2", "applicationARN": "arn:aws:kinesisanalyticsus-east-1:123456789012:application/test", "applicationVersionId": "1", "messageSchemaVersion": "1", "messageType": "INFO" }