本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
配置 AWS X-Ray 守护程序
您可以使用命令行选项或配置文件来自定义 X-Ray 守护程序的行为。大多数选项适用于这两种方法,但有一些只适用于配置文件,有一些只适用于命令行。
要开始使用,您需要知道的唯一选项是 -n
或 --region
,用于设置守护程序使用的区域,或将跟踪数据发送到 X-Ray。
~/xray-daemon$ ./xray -n us-east-2
如果您在本地运行守护程序(不是在 Amazon EC2 上),则可添加 -o
选项,跳过对实例配置文件凭证的检查,这样守护程序就能更快地进入就绪状态。
~/xray-daemon$ ./xray -o
-n us-east-2
其余的命令行选项可让您配置日志记录、侦听不同端口、限制守护程序可以使用的内存量,或代入角色将跟踪数据发送到其他账户。
您可以将配置文件传递到守护程序,以访问高级配置选项,并完成其他任务,如限制并发调用 X-Ray 的数量、禁用日志轮换,并将流量发送到代理。
支持的环境变量
X-Ray 守护程序支持以下环境变量:
-
AWS_REGION
– 指定 AWS 区域 X-Ray服务端点的。 -
HTTPS_PROXY
– 指定守护程序的代理地址,以便通过上传段。它可以是代理服务器使用的 DNS 域名或 IP 地址和端口号。
使用命令行选项
当您在本地或使用用户数据脚本运行守护程序时,将这些选项传递给它。
命令行选项
-
-b
、--bind
– 侦听其他 UDP 端口上的分段文档。--bind "127.0.0.1:
3000
"默认值 –
2000
。 -
-t
、--bind-tcp
– 侦听对其他 TCP 端口上的 X-Ray 服务的调用。-bind-tcp "127.0.0.1:
3000
"默认值 –
2000
。 -
-c
、--config
– 从指定路径加载配置文件。--config "
/home/ec2-user/xray-daemon.yaml
" -
-f
、--log-file
– 将日志输出到指定文件路径。--log-file "
/var/log/xray-daemon.log
" -
-l
、--log-level
– 日志级别,依次为从最详细到最不详细:dev、debug、info、warn、error、prod。--log-level
warn
默认值 –
prod
-
-m
、--buffer-memory
– 更改缓冲区可以使用的内存量(单位:MB,最小值为 3)。--buffer-memory
50
默认值 – 1% 的可用内存。
-
-o
、--local-mode
– 不检查是否有 EC2 实例元数据。 -
-r
、--role-arn
– 采用指定的 IAM 角色将分段上传到其他账户。--role-arn "arn:aws:iam::
123456789012
:role/xray-cross-account
" -
-a
、--resource-arn
– 运行守护程序的 AWS 资源的 Amazon 资源名称 (ARN)。 -
-p
、--proxy-address
– 通过代理向 AWS X-Ray 上传分段。必须指定代理服务器的协议。--proxy-address "
http://192.0.2.0:3000
" -
-n
、--region
– 向特定区域中的 X-Ray 服务发送分段。 -
-v
、--version
– 显示 AWS X-Ray 守护程序版本。 -
-h
、--help
– 显示帮助屏幕。
使用配置文件
您也可以使用 YAML 格式文件来配置守护程序。使用 -c
选项传递配置文件到守护程序。
~$ ./xray -c ~/xray-daemon.yaml
配置文件选项
-
TotalBufferSizeMB
– 最大缓冲区大小(单位:MB,最小值为 3)。选择 0 则使用 1% 的主机内存。 -
Concurrency
– 并发调用 AWS X-Ray 以上传分段文档的最大调用数量。 -
Region
– 向特定区域中的 AWS X-Ray 服务发送分段。 -
Socket
– 配置守护程序的绑定。-
UDPAddress
– 更改守护程序侦听的端口。 -
TCPAddress
– 侦听对其他 TCP 端口上的 X-Ray 服务的调用。
-
-
Logging
– 配置日志记录行为。-
LogRotation
– 设置为false
以禁用日志轮换。 -
LogLevel
– 更改日志级别,从最详细到最少:dev
,debug
,info
,warn
,error
,prod
(默认)。 -
LogPath
– 将日志输出到指定文件路径。
-
-
LocalMode
– 设置为true
以跳过对 EC2 实例元数据的检查。 -
ResourceARN
– 运行守护程序的 AWS 资源的 Amazon 资源名称 (ARN)。 -
RoleARN
– 采用指定的 IAM 角色将分段上传到其他账户。 -
ProxyAddress
– 通过代理向 AWS X-Ray 上传分段。 -
Endpoint
– 将 X-Ray 服务终端节点改为守护程序向其发送分段文档的节点。 -
NoVerifySSL
– 禁用 TLS 证书验证。 -
Version
– 守护程序配置文件格式版本。文件格式版本是 必填 字段。
例 Xray-daemon.yaml淡紫色
此配置文件将守护程序的侦听端口改为 3000,并且关闭对实例元数据的检查,设置用于上传分段的角色,以及更改区域和日志记录选项。
Socket:
UDPAddress: "127.0.0.1:3000"
TCPAddress: "127.0.0.1:3000"
Region: "us-west-2"
Logging:
LogLevel: "warn"
LogPath: "/var/log/xray-daemon.log"
LocalMode: true
RoleARN: "arn:aws:iam::123456789012:role/xray-cross-account"
Version: 2