CloudWatch ログへのカスタムメッセージの書き込み - Managed Service for Apache Flink

Amazon Managed Service for Apache Flink は、以前は Amazon Kinesis Data Analytics for Apache Flink と呼ばれていました。

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

CloudWatch ログへのカスタムメッセージの書き込み

Managed Service for Apache Flink アプリケーションの CloudWatch ログにカスタムメッセージを書き込むことができます。Apachelog4jライブラリまたはSimple Logging Facade for Java (SLF4J)ライブラリを使用します。

Log4J を使用して CloudWatch ログに書き込む

  1. 次の依存関係をアプリケーションのpom.xmlファイルに追加します。

    <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. ライブラリからオブジェクトを含めます。

    import org.apache.logging.log4j.Logger;
  3. Loggerオブジェクトをインスタンス化し、次のアプリケーションクラスを渡します。

    private static final Logger log = LogManager.getLogger.getLogger(YourApplicationClass.class);
  4. log.infoを使用してログに書き込みます。アプリケーションログには、多数のメッセージが書き込まれます。カスタムメッセージをフィルタリングしやすくするには、INFOアプリケーションログレベルを使用してください。

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

アプリケーションは、次のようなメッセージを含むレコードをログに書き込みます。

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

SLF4J を使用して CloudWatch ログに書き込む

  1. 次の依存関係をアプリケーション pom.xml ファイルに追加します。

    <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.7</version> <scope>runtime</scope> </dependency>
  2. ライブラリからのオブジェクトを含めます。

    import org.slf4j.Logger; import org.slf4j.LoggerFactory;
  3. Loggerオブジェクトをインスタンス化し、次のアプリケーションクラスを渡します。

    private static final Logger log = LoggerFactory.getLogger(YourApplicationClass.class);
  4. log.infoを使用してログに書き込みます。アプリケーションログには、多数のメッセージが書き込まれます。カスタムメッセージをフィルタリングしやすくするには、INFOアプリケーションログレベルを使用してください。

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

アプリケーションは、次のようなメッセージを含むレコードをログに書き込みます。

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