

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

# MSK Connect 的日誌
<a name="msk-connect-logging"></a>

MSK Connect 能寫入日誌事件，您可用來對連接器進行偵錯。在建立連接器時，您可以指定下列零個或多個日誌目的地：
+ Amazon CloudWatch Logs：您可以指定要 MSK Connect 向其傳送連接器日誌事件的日誌群組。如需詳細資訊，請參閱《CloudWatch Logs 使用者指南》** 中的[建立日誌群組](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#Create-Log-Group)。
+ Amazon S3：您可以指定要 MSK Connect 向其傳送連接器日誌事件的 S3 儲存貯體。如需有關建立 S3 儲存貯體的詳細資訊，請參閱《Amazon S3 使用者指南》**中的[建立儲存貯體](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html)。
+ Amazon Data Firehose：您可以指定 MSK Connect 傳送連接器日誌事件的目標交付串流。如需有關如何建立交付串流的資訊，請參閱 [Firehose 使用者指南中的建立 Amazon Data Firehose 交付串流](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html)。 **

若要進一步了解如何設定日誌，請參閱《Amazon CloudWatch Logs 使用者指南》**中的[啟用從 AWS 服務記錄日誌](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html)。

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


****  

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

以下是傳送至 CloudWatch Logs 的日誌事件範例：

```
[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)
```

## 避免秘密顯示在連接器日誌中
<a name="msk-connect-logging-secrets"></a>

**注意**  
如果外掛程式未將這些值定義為秘密，則敏感組態值可能會顯示在連接器日誌中。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 列舉常數 [https://kafka.apache.org/27/javadoc/org/apache/kafka/common/config/ConfigDef.Type.html#PASSWORD](https://kafka.apache.org/27/javadoc/org/apache/kafka/common/config/ConfigDef.Type.html#PASSWORD) 來定義敏感屬性。當屬性是 `ConfigDef.Type.PASSWORD` 類型時，即使該值以純文字形式傳送，Kafka Connect 也會從連接器日誌中排除其值。