本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將自訂訊息寫入 CloudWatch Logs
您可以將自訂訊息寫入 Managed Service for Apache Flink 應用程式的 CloudWatch 日誌。您可以使用 Apache log4jSimple Logging Facade for Java (SLF4J)
使用 Log4J 寫入 CloudWatch 日誌
-
將下列相依性新增至應用程式的
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> -
包括來自程式庫的物件:
import org.apache.logging.log4j.Logger; -
具現化
Logger物件,傳入你的應用程式類別:private static final Logger log = LogManager.getLogger.getLogger(YourApplicationClass.class); -
使用
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 日誌
-
將下列相依性新增至應用程式的
pom.xml檔案:<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.7</version> <scope>runtime</scope> </dependency> -
包括來自程式庫的物件:
import org.slf4j.Logger; import org.slf4j.LoggerFactory; -
具現化
Logger物件,傳入你的應用程式類別:private static final Logger log = LoggerFactory.getLogger(YourApplicationClass.class); -
使用
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" }