

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 指定代理配置设置
<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
```

一般的设置配置如下。


| 配置设置 | 说明 | 
| --- | --- | 
| <a name="assumeRoleARN"></a>assumeRoleARN |  用户应承担的角色的 Amazon 资源名称 (ARN)。有关更多信息，请参阅 IAM *用户指南*中的[使用 IAM 角色委派跨 Amazon 账户访问权限](https://docs.amazonaws.cn/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html)。  | 
| <a name="assumeRoleExternalId"></a>assumeRoleExternalId |  确定谁可以担任该角色的可选标识符。有关更多信息，请参阅《IAM 用户指南》**中的[如何使用外部 ID](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html)。  | 
| <a name="awsAccessKeyId"></a>awsAccessKeyId |  Amazon 覆盖默认凭证的访问密钥 ID。此设置优先于所有其他凭证提供程序。  | 
| <a name="awsSecretAccessKey"></a>awsSecretAccessKey |  Amazon 覆盖默认凭证的密钥。此设置优先于所有其他凭证提供程序。  | 
| cloudwatch.emitMetrics |   CloudWatch 如果已设置，则允许代理向其发送指标 (true)。 默认：True  | 
| cloudwatch.endpoint |  的区域终端节点 CloudWatch。 默认值：`monitoring.us-east-1.amazonaws.com`  | 
| firehose.endpoint |  Amazon Data Firehose 的区域端点。 默认值：`firehose.us-east-1.amazonaws.com`  | 
| sts.endpoint |   Amazon 安全令牌服务的区域终端节点。 默认值：`https://sts.amazonaws.com`  | 
| userDefinedCredentialsProvider.classname | 如果定义自定义凭证提供程序，请使用此设置提供其完全限定类名。不要在类名末尾包含 .class。 | 
| userDefinedCredentialsProvider.location | 如果定义自定义凭证提供程序，请使用此设置指定包含自定义凭证提供程序的 jar 的绝对路径。代理还在以下位置查找 jar 文件：/usr/share/aws-kinesis-agent/lib/。 | 

流配置设置如下。


| 配置设置 | 说明 | 
| --- | --- | 
| aggregatedRecordSizeBytes |  要使代理聚合记录，然后在一个操作中将这些记录放入 Firehose 流，请指定此设置。将此项设置为所需的大小，您希望聚合记录达到该大小后，代理将记录放入 Firehose 流。 默认值：0（不聚合）  | 
| dataProcessingOptions |  在将每个被分析的记录发送到 Firehose 流之前应用于这些记录的处理选项的列表。这些处理选项按指定的顺序执行。有关更多信息，请参阅 [使用代理对数据进行预处理](pre-processing.md)。  | 
| deliveryStream |  [必需] Firehose 流名称。  | 
| filePattern |  [必需] 需要由代理监控的文件的 Glob。与此模式匹配的任何文件都会自动由代理挑选出来并进行监控。对于匹配此模式的所有文件，请向 `aws-kinesis-agent-user` 授予读取权限。对于包含这些文件的目录，请向 `aws-kinesis-agent-user` 授予读取和执行权限。  代理将选择与此模式匹配的任何文件。为了确保代理不会选择意外的记录，请仔细选择此模式。   | 
| initialPosition |  开始解析文件的初始位置。有效值为 `START_OF_FILE` 和 `END_OF_FILE`。 默认值：`END_OF_FILE`  | 
| maxBufferAgeMillis |  代理在将数据发送到 Firehose 流之前缓冲数据的最长时间（以毫秒计）。 值范围：1,000-900,000（1 秒到 15 分钟） 默认值：60,000（1 分钟）  | 
| maxBufferSizeBytes |  代理在将数据发送到 Firehose 流之前缓冲的数据的最大大小（以字节计）。 值范围：1-4,194,304（4MB） 默认值：4194304 (4 MB)  | 
| maxBufferSizeRecords |  代理在将数据发送到 Firehose 流之前缓冲数据的最大记录数。 值范围：1-500 默认值：500  | 
| minTimeBetweenFilePollsMillis |  代理轮询和分析受监控文件中是否有新数据的时间间隔（以毫秒计）。 值范围：1 或更大值 默认值：100  | 
| multiLineStartPattern |  用于标识记录开始的模式。记录由与模式匹配的行以及与模式不匹配的任何以下行组成。有效值为正则表达式。默认情况下，日志文件中的每一个新行都被解析为一条记录。  | 
| skipHeaderLines |  代理从受监控文件开头跳过分析的行数。 值范围：0 或更大值 默认值：0（零）  | 
| truncatedRecordTerminator |  在记录大小超过 Amazon Data Firehose 记录大小限制时，代理用来截断已解析记录的字符串。(1000 KB) 默认值：`'\n'`（换行符）  | 