适用于 PHP 的 AWS 开发工具包
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

为AWS SDK for PHP版本 3 设置开发工具包指标

以下步骤演示如何为AWS SDK for PHP设置开发工具包指标。这些步骤适用于为正在使用AWS SDK for PHP的客户端应用程序运行 Amazon Linux 的 Amazon EC2 实例。如果在配置AWS SDK for PHP时启用,开发工具包指标也可用于您的生产环境。

要使用开发工具包指标,请运行最新版本的 CloudWatch 代理。了解如何在 Amazon CloudWatch User Guide为开发工具包指标配置 CloudWatch 代理

有关开发工具包指标的 IAM 权限的更多详细信息,请查阅适用于 PHP 的 AWS 开发工具包的开发工具包指标的 IAM 权限文章。

要使用AWS SDK for PHP设置开发工具包指标,请按照以下说明操作:

  1. 使用AWS SDK for PHP客户端创建应用程序以使用 AWS 服务。

  2. 在 Amazon EC2 实例上或您的本地环境中托管您的项目。

  3. 安装并使用最新版本的AWS SDK for PHP。

  4. 在 EC2 实例上或您的本地环境中安装和配置 CloudWatch 代理。

  5. 授权 开发工具包指标 收集和发送指标。

  6. 为适用于 PHP 的 AWS 开发工具包启用开发工具包指标

有关更多信息,请参阅下列内容:

为 AWS SDK for PHP 启用 开发工具包指标

默认情况下,开发工具包指标 处于关闭状态,主机设置为“127.0.0.1”,而端口设置为 31000。下面是默认参数。

//default values [ 'enabled' => false, 'host' => '127.0.0.1', 'port' => 31000, ]

启用 开发工具包指标 与配置凭证以使用 AWS 服务无关。

您可以通过传入客户端配置选项、设置环境变量或使用 AWS 共享配置文件来启用 开发工具包指标。

优先顺序

优先级顺序如下所示(1 覆盖 2-3,等等):

  1. 客户端配置选项

  2. 环境变量

  3. AWS 共享配置文件

选项 1:客户端配置选项

您可以向客户端构造函数传入 csm 选项以启用和设置配置选项。此选项可能是关联的数组、\Aws\ClientSideMonitoring\ConfigurationInterface 的实例、提供 \Aws\ClientSideMonitoring\ConfigurationInterface 实例的可调用项或布尔值 false

关联数组:

$client = new \Aws\S3\S3Client([ 'region' => 'your-region', 'version' => 'latest', 'csm' => [ 'enabled' => true, 'host' => 'my.host', 'port' => 1234, 'client_id' => 'My Application' ] ]);

\Aws\ClientSideMonitoring\ConfigurationInterface 的实例:

$client = new \Aws\S3\S3Client([ 'region' => 'your-region', 'version' => 'latest', 'csm' => new \Aws\ClientSideMonitoring\Configuration( true, 'my.host', 1234, 'My Application' ) ]);

可调用项:

$client = new \Aws\S3\S3Client([ 'region' => 'your-region', 'version' => 'latest', 'csm' => function() { return new \Aws\ClientSideMonitoring\Configuration( true, '127.0.0.1', 1234, 'My Application' ); } ]);

布尔值“false”:

$client = new \Aws\S3\S3Client([ 'region' => 'your-region', 'version' => 'latest', 'csm' => false ]);

选项 2:设置环境变量

开发工具包首先会检查 AWS_PROFILE 下的环境变量中指定的配置文件,以确定是否已启用开发工具包指标。

要打开开发工具包指标,请将以下内容添加到环境变量中。

export AWS_CSM_ENABLED=true

其他配置设置可用。有关使用共享文件的更多信息,请参阅使用环境变量中的凭证

注意

启用开发工具包指标不会将您的凭证配置为使用 AWS 服务。为此,请参阅适用于 PHP 的 AWS 开发工具包版本 3 的凭证

选项 3:AWS 共享配置文件

如果在环境变量中未找到任何 CSM 配置,则开发工具包会查看您的默认 AWS 配置文件字段。如果 AWS_DEFAULT_PROFILE 设置为默认值之外的其他值,请更新该配置文件。要启用开发工具包指标,请将 csm_enabled 添加到位于 ~/.aws/config 的共享配置文件。

[default] csm_enabled = true [profile aws_csm] csm_enabled = true

其他配置设置可用。有关使用 AWS 共享文件的更多信息,请参阅 使用 AWS 凭证文件和凭证配置文件

注意

启用开发工具包指标不会将您的凭证配置为使用 AWS 服务。为此,请参阅适用于 PHP 的 AWS 开发工具包版本 3 的凭证

更新 CloudWatch 代理

要更改主机或端口 ID,您需要设置值,然后重新启动当前处于活动状态的所有 AWS 作业。

选项 1:客户端配置选项

有关如何设置客户端配置 csm 选项以修改 CSM 设置的示例,请参阅“为 AWS SDK for PHP 启用 开发工具包指标”下的上述“选项 1”。

选项 2:设置环境变量

大多数 AWS 服务都使用默认端口。但是,如果您希望 开发工具包指标 监控的服务使用唯一端口,请将 AWS_CSM_PORT=[port_number] 添加到主机的环境变量中。此外,可以使用 AWS_CSM_HOST 环境变量来指定其他主机。

export AWS_CSM_ENABLED=true export AWS_CSM_PORT=1234 export AWS_CSM_HOST=192.168.0.1

选项 3:AWS 共享配置文件

大多数服务都使用默认端口。但是,如果您的服务需要唯一的端口 ID,请将 csm_port = [port_number] 添加到 ~/.aws/config。可以使用 csm_host 指定非默认主机。

[default] csm_enabled = false csm_host = 123.4.5.6 csm_port = 1234 [profile aws_csm] csm_enabled = false csm_host = 123.4.5.6 csm_port = 1234

重新启动 开发工具包指标

要重新启动作业,请运行以下命令。

amazon-cloudwatch-agent-ctl –a stop; amazon-cloudwatch-agent-ctl –a start;

禁用 开发工具包指标

要关闭 开发工具包指标,请将您的环境变量中或位于 ~/.aws/config 的 AWS 共享配置文件中的 csm_enabled 设置为 false。然后重新启动您的 CloudWatch 代理,以使更改生效。

将 csm_enabled 设置为 false

注意

请注意上面列出的优先顺序。例如,如果在环境变量中启用但在配置文件中禁用 开发工具包指标,则 开发工具包指标 保持启用状态。

选项 1:客户端配置

$client = new \Aws\S3\S3Client([ 'region' => 'your-region', 'version' => 'latest', 'csm' => false ]);

选项 2:环境变量

export AWS_CSM_ENABLED=false

选项 3:AWS 共享配置文件

[default] csm_enabled = false [profile aws_csm] csm_enabled = false

停止开发工具包指标,然后重新启动 CloudWatch 代理

要禁用开发工具包指标,请使用以下命令。

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a stop && echo "Done"

如果您正在使用其他 CloudWatch 功能,请使用以下命令重新启动 CloudWatch。

amazon-cloudwatch-agent-ctl –a start;