

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

# 指定代理程式組態設定
<a name="agent-config-settings"></a>

代理程式支援兩種必要的組態設定 `filePattern` 和 `deliveryStream`，以及用於其他功能的選用組態設定。您可以在 `/etc/aws-kinesis/agent.json` 指定必要及選用的組態設定。

當您變更組態檔案時，必須使用下列命令停止及啟動代理程式：

```
sudo service aws-kinesis-agent stop
sudo service aws-kinesis-agent start
```

或者，您可以使用下列命令：

```
sudo service aws-kinesis-agent restart
```

以下是一般組態設定。


| 組態設定 | Description | 
| --- | --- | 
| <a name="assumeRoleARN"></a>assumeRoleARN | 使用者欲擔任角色的 Amazon Resource Name (ARN)。如需詳細資訊，請參閱《[IAM 使用者指南》中的使用 IAM 角色跨 AWS 帳戶委派存取權](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html)。 ** | 
| <a name="assumeRoleExternalId"></a>assumeRoleExternalId | 選用的識別符決定誰可以擔任此角色。如需詳細資訊，請參閱《IAM 使用者指南》**中的[如何使用外部 ID](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html)。 | 
| <a name="awsAccessKeyId"></a>awsAccessKeyId | AWS 會覆寫預設登入資料的存取金鑰 ID。此設定優先於所有其他登入資料供應商。 | 
| <a name="awsSecretAccessKey"></a>awsSecretAccessKey | AWS 覆寫預設登入資料的私密金鑰。此設定優先於所有其他登入資料供應商。 | 
| cloudwatch.emitMetrics | 如設定為 (true)，將啟用代理程式發出指標至 CloudWatch。<br />預設：true | 
| cloudwatch.endpoint | 適用於 CloudWatch 的區域端點。<br />預設：`monitoring.us-east-1.amazonaws.com` | 
| firehose.endpoint | Amazon Data Firehose 的區域端點。<br />預設：`firehose.us-east-1.amazonaws.com` | 
| sts.endpoint | Security AWS Token Service 的區域端點。<br />預設：`https://sts.amazonaws.com` | 
| userDefinedCredentialsProvider.classname | 如果您定義自訂登入資料提供者，請使用此設定提供其完整類別名稱。不要在類別名稱的末尾包含 .class。 | 
| userDefinedCredentialsProvider.location | 如果您定義自訂登入資料提供者，請使用此設定來指定包含自訂登入資料提供者之 jar 的絕對路徑。代理程式也會在下列位置尋找 jar 檔案：/usr/share/aws-kinesis-agent/lib/。 | 

以下是流程組態設定。


| 組態設定 | Description | 
| --- | --- | 
| aggregatedRecordSizeBytes | 若要建立代理程式彙總記錄，然後將其放入 Firehose 串流，請指定此設定。將其設定為您希望彙總記錄在代理程式將其放入 Firehose 串流之前擁有的大小。<br />預設值：0 (無彙總) | 
| dataProcessingOptions | 在傳送至 Firehose 串流之前，套用至每個剖析記錄的處理選項清單。此處理選項會在指定的資料夾執行。如需詳細資訊，請參閱[使用 代理程式預先處理資料](pre-processing.md)。 | 
| deliveryStream | 【必要】 Firehose 串流的名稱。 | 
| filePattern | [必要] 需要代理程式監控的檔案部分。符合此模式的任何檔案將由代理程式自動挑選及監控。對於符合此模式的所有檔案，請將讀取許可授與 `aws-kinesis-agent-user`。對於包含檔案的目錄，請將讀取和執行許可授與 `aws-kinesis-agent-user`。 代理程式會挑選符合此模式的任何檔案。若要確保代理程式不會挑選意外的記錄，請小心選擇此模式。  | 
| initialPosition | 檔案開始進行剖析的初始位置。有效值為 `START_OF_FILE` 和 `END_OF_FILE`。<br />預設：`END_OF_FILE` | 
| maxBufferAgeMillis | 代理程式在將資料傳送到 Firehose 串流之前緩衝資料的最長時間，以毫秒為單位。<br />數值範圍：1,000–900,000 (1 秒到 15 分鐘)<br />預設：60,000 (1 分鐘) | 
| maxBufferSizeBytes | 代理程式在將資料傳送到 Firehose 串流之前緩衝資料的大小上限，以位元組為單位。<br />數值範圍：1–4,194,304 (4 MB)<br />預設：4,194,304 (4 MB) | 
| maxBufferSizeRecords | 代理程式在將資料傳送到 Firehose 串流之前緩衝資料的記錄數目上限。<br />數值範圍：1–500<br />預設：500 | 
| minTimeBetweenFilePollsMillis | 代理程式輪詢和剖析檔案以找出新資料的時間間隔 (以毫秒為單位)。<br />數值範圍：1 或以上<br />預設：100 | 
| multiLineStartPattern | 用於識別記錄開始處的模式。記錄是由符合模式的一列及不符合模式的任何幾列所組成。有效值為常規運算式。根據預設，每個新日誌檔中的新列會剖析為一筆記錄。 | 
| skipHeaderLines | 代理程式剖析監控檔案開頭部分時略過的列數。<br />數值範圍：0 或以上<br />預設：0 (零) | 
| truncatedRecordTerminator | 當記錄大小超過 Amazon Data Firehose 記錄大小限制時，代理程式用來截斷已剖析記錄的字串。(1,000 KB)<br />預設：`'\n'` (換行符號) | 