MSK Connect 的日誌 - Amazon Managed Streaming for Apache Kafka

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

MSK Connect 的日誌

MSK Connect 能寫入日誌事件,您可用來對連接器進行偵錯。在建立連接器時,您可以指定下列零個或多個日誌目的地:

  • Amazon CloudWatch 日誌:您可以指定要 MSK Connect 傳送連接器日誌事件的日誌群組。如需如何建立記錄群組的詳細資訊,請參閱CloudWatch 記錄檔使用手冊中的建立記錄群組

  • Amazon S3:您可以指定要 MSK Connect 向其傳送連接器日誌事件的 S3 儲存貯體。如需有關建立 S3 儲存貯體的詳細資訊,請參閱《Amazon S3 使用者指南》中的建立儲存貯體

  • Amazon 資料 Firehose:您可以指定要 MSK Connect 傳送連接器日誌事件的交付串流。如需如何建立交付串流的詳細資訊,請參閱 Firehose 使用者指南中的建立 Amazon 資料 Firehose 交付串流。

若要進一步了解如何設定日誌,請參閱《Amazon CloudWatch Logs 使用者指南》中的啟用從 AWS 服務記錄日誌

MSK Connect 會發出下列類型的日誌事件:

Level 描述
INFO 啟動和關閉時需要關注的執行期事件。
WARN 執行期狀況並非錯誤,但不想要或未預期該執行期狀況。
FATAL 導致過早終止的嚴重錯誤。
ERROR 不嚴重的意外狀況和執行期錯誤。

以下是傳送至 CloudWatch 記錄檔的記錄事件範例:

[Worker-0bb8afa0b01391c41] [2021-09-06 16:02:54,151] WARN [Producer clientId=producer-1] Connection to node 1 (b-1.my-test-cluster.twwhtj.c2.kafka.us-east-1.amazonaws.com/INTERNAL_IP) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient:782)

避免秘密顯示在連接器日誌中

注意

如果外掛程式未將這些值定義為秘密,則敏感組態值可能會顯示在連接器日誌中。Kafka Connect 會將未定義的組態值視為與任何其他純文字值相同。

如果您的外掛程式將屬性定義為秘密,則 Kafka Connect 會在連接器日誌中遮蔽該屬性的值。例如,下列連接器日誌會示範若外掛程式將 aws.secret.key 定義為 PASSWORD 類型,則其值將被取代為 [hidden]

2022-01-11T15:18:55.000+00:00 [Worker-05e6586a48b5f331b] [2022-01-11 15:18:55,150] INFO SecretsManagerConfigProviderConfig values: 2022-01-11T15:18:55.000+00:00 [Worker-05e6586a48b5f331b] aws.access.key = my_access_key 2022-01-11T15:18:55.000+00:00 [Worker-05e6586a48b5f331b] aws.region = us-east-1 2022-01-11T15:18:55.000+00:00 [Worker-05e6586a48b5f331b] aws.secret.key = [hidden] 2022-01-11T15:18:55.000+00:00 [Worker-05e6586a48b5f331b] secret.prefix = 2022-01-11T15:18:55.000+00:00 [Worker-05e6586a48b5f331b] secret.ttl.ms = 300000 2022-01-11T15:18:55.000+00:00 [Worker-05e6586a48b5f331b] (com.github.jcustenborder.kafka.config.aws.SecretsManagerConfigProviderConfig:361)

若要避免秘密出現在連接器日誌檔案中,外掛程式開發人員必須使用 Kafka Connect 列舉常數 ConfigDef.Type.PASSWORD 來定義敏感屬性。當屬性是 ConfigDef.Type.PASSWORD 類型時,即使該值以純文字形式傳送,Kafka Connect 也會從連接器日誌中排除其值。