APM 服务器命令参考
编辑

这些命令仅适用于 APM 服务器二进制安装方法。

APM 服务器提供命令行界面,用于启动 APM 服务器并执行常见任务,例如测试配置文件。

命令行还支持用于控制全局行为的全局标志

如果满足以下条件,请使用sudo运行以下命令:

  • 配置文件由root拥有,或者
  • APM 服务器配置为捕获需要root访问权限的数据。

此处描述的部分功能需要 Elastic 许可证。更多信息,请参阅 https://elastic.ac.cn/subscriptions许可证管理

命令

apikey

管理 APM 代理和服务器之间通信的 API 密钥。

在 8.6.0 版本中已弃用。

用户应通过 Kibana 或 Elasticsearch REST API 创建 API 密钥。请参阅 API 密钥

export

将配置、索引模板或 ILM 策略导出到标准输出。

help

显示任何命令的帮助信息。

keystore

管理密钥库

run

运行 APM 服务器。如果您在不指定命令的情况下启动 APM 服务器,则默认使用此命令。

test

测试配置。

version

显示有关当前版本的信息。

另请参阅 全局标志

apikey 命令编辑

此功能处于技术预览阶段,可能会在将来的版本中更改或删除。Elastic 将努力解决任何问题,但技术预览中的功能不受官方 GA 功能的支持 SLA 的约束。

在 8.6.0 版本中已弃用。

用户应通过 Kibana 或 Elasticsearch REST API 创建 API 密钥。请参阅 API 密钥

APM 代理和 APM 服务器之间的通信现在支持在授权标头中发送API 密钥。APM 服务器提供一个apikey命令,可以创建、验证、使无效以及显示有关代理/服务器通信的 API 密钥的信息。大多数操作都需要manage_own_api_key集群权限,并且您必须确保apm-server.api_keyoutput.elasticsearch已正确配置。

概要

apm-server apikey SUBCOMMAND [FLAGS]

子命令

create

创建具有指定权限的 API 密钥。没有必需的标志。

请求创建 API 密钥的用户需要拥有 APM 服务器使用的 APM 权限。超级用户默认拥有这些权限。

展开以获取有关将这些权限分配给其他用户的更多信息

要创建一个具有创建和管理 API 密钥所需权限的 APM 服务器用户

  1. 创建一个名为apm_api_key(或类似名称)的API 密钥角色,该角色具有以下cluster级别权限:

    权限 用途

    manage_own_api_key

    允许 APM 服务器创建、检索和使 API 密钥无效

  2. 根据API 密钥角色的用途,还分配相应的apm应用程序级别权限

    • 接收代理配置,请分配config_agent:read
    • 摄取代理数据,请分配event:write
    • 上传源映射,请分配sourcemap:write
info
查询 API 密钥。需要--id--name
invalidate
使 API 密钥无效。需要--id--name
verify
检查凭据字符串是否具有给定的权限。需要--credentials

标志

--agent-config
代理远程读取配置所需。与createverify子命令一起使用有效。与create一起使用时,会为创建的密钥授予config_agent:read权限。与verify一起使用时,会请求config_agent:read权限。
--credentials CREDS
verify子命令所需。指定要检查其权限的凭据。凭据是 API 密钥的id:api_key的 base64 编码表示形式。
--expiration TIME
create一起使用时,指定密钥的过期时间,例如“1d”(默认永不过期)。
--id ID
API 密钥的 ID。与infoinvalidate子命令一起使用有效。与info一起使用时,查询指定的 ID。与invalidate一起使用时,删除指定的 ID。
--ingest
摄取事件所需。与createverify子命令一起使用有效。与create一起使用时,会为创建的密钥授予event:write权限。与verify一起使用时,会请求event:write权限。
--json
以 JSON 格式打印命令的输出。与所有apikey子命令一起使用有效。
--name NAME
API 密钥的名称。与createinfoinvalidate子命令一起使用有效。与create一起使用时,指定要创建的 API 密钥的名称(默认值:“apm-key”)。与info一起使用时,指定要查询的 API 密钥(可能有多个匹配项)。与invalidate一起使用时,指定要删除的 API 密钥(可能有多个匹配项)。
--sourcemap
上传源映射所需。与createverify子命令一起使用有效。与create一起使用时,会为创建的密钥授予sourcemap:write权限。与verify一起使用时,会请求sourcemap:write权限。
--valid-only
info一起使用时,仅返回有效的 API 密钥(未过期或未失效)。

另请参阅 全局标志

示例

apm-server apikey create --ingest --agent-config --name example-001
apm-server apikey info --name example-001 --valid-only
apm-server apikey invalidate --name example-001

更多信息,请参阅 API 密钥

export 命令编辑

将配置、索引模板或 ILM 策略导出到标准输出。您可以使用此命令快速查看您的配置或查看索引模板或 ILM 策略的内容。

概要

apm-server export SUBCOMMAND [FLAGS]

子命令

config
将当前配置导出到标准输出。如果您使用-c标志,则此命令将导出在指定文件中定义的配置。
template
将索引模板导出到标准输出。您可以指定--es.version--index标志来进一步定义要导出的内容。此外,您可以通过使用--dir定义目录,将模板导出到文件而不是stdout
ilm-policy
将索引生命周期管理策略导出到标准输出。您可以指定--es.version--dir,将策略导出为文件而不是导出到stdout

标志

--es.version VERSION
template一起使用时,导出与指定版本兼容的索引模板。与ilm-policy一起使用时,如果为 ILM启用了指定的 ES 版本,则导出 ILM 策略。
-h, --help
显示export命令的帮助信息。
--index BASE_NAME
template一起使用时,设置要用于索引模板的基本名称。如果未指定此标志,则默认基本名称为apm-server
--dir DIRNAME
定义一个目录,将模板和 ILM 策略导出到该目录作为文件,而不是将它们打印到stdout

另请参阅 全局标志

示例

apm-server export config
apm-server export template --es.version 8.16.0 --index myindexname
help 命令编辑

显示任何命令的帮助信息。如果未指定命令,则显示run命令的帮助信息。

概要

apm-server help COMMAND_NAME [FLAGS]
COMMAND_NAME
指定要显示其帮助信息的命令的名称。

标志

-h, --help
显示help命令的帮助信息。

另请参阅 全局标志

示例

apm-server help export
keystore 命令编辑

管理密钥库

概要

apm-server keystore SUBCOMMAND [FLAGS]

子命令

add KEY
将指定的密钥添加到密钥库。使用--force标志覆盖现有密钥。使用--stdin标志通过stdin传递值。
create
创建密钥库以保存密钥。使用--force标志覆盖现有密钥库。
list
列出密钥库中的密钥。
remove KEY
从密钥库中删除指定的密钥。

标志

--force
addcreate子命令一起使用有效。与add一起使用时,覆盖指定的密钥。与create一起使用时,覆盖密钥库。
--stdin
add一起使用时,使用 stdin 作为密钥值的来源。
-h, --help
显示keystore命令的帮助信息。

另请参阅 全局标志

示例

apm-server keystore create
apm-server keystore add ES_PWD
apm-server keystore remove ES_PWD
apm-server keystore list

有关更多示例,请参阅安全设置的密钥库

run 命令编辑

运行 APM 服务器。如果您在不指定命令的情况下启动 APM 服务器,则默认使用此命令。

概要

apm-server run [FLAGS]

apm-server [FLAGS]

标志

-N, --N
禁用发布以进行测试。
--cpuprofile 文件
将CPU性能分析数据写入指定的文件。此选项有助于排查APM服务器问题。
-h, --help
显示run命令的帮助信息。
--httpprof [主机]:端口
启动用于性能分析的HTTP服务器。此选项有助于排查和分析APM服务器。
--memprofile 文件
将内存性能分析数据写入指定输出文件。此选项有助于排查APM服务器问题。
--system.hostfs 挂载点
指定主机文件系统的挂载点,用于监控主机。

另请参阅 全局标志

示例

apm-server run -e

apm-server -e
test 命令编辑

测试配置。

概要

apm-server test SUBCOMMAND [FLAGS]

子命令

config
测试配置设置。
输出
测试APM服务器是否可以使用当前设置连接到输出。

标志

-h, --help
显示test命令的帮助信息。

另请参阅 全局标志

示例

apm-server test config
version 命令编辑

显示有关当前版本的信息。

概要

apm-server version [FLAGS]

标志

-h, --help
显示version命令的帮助信息。

另请参阅 全局标志

示例

apm-server version
全局标志编辑

这些全局标志在运行APM服务器时始终可用。

-E, --E "设置名称=值"

覆盖特定的配置设置。可以指定多个覆盖。例如:

apm-server -E "name=mybeat" -E "output.elasticsearch.hosts=['http://myhost:9200']"

此设置应用于当前正在运行的APM服务器进程。APM服务器配置文件不会更改。

-c, --c 文件
指定要用于APM服务器的配置文件。此处指定的文件相对于path.config。如果未指定-c标志,则使用默认配置文件apm-server.yml
-d, --d 选择器
为指定的选定器启用调试。对于选择器,可以指定组件的逗号分隔列表,也可以使用-d "*"为所有组件启用调试。例如,-d "publisher"将显示所有与发布者相关的消息。
-e, --e
将日志记录到stderr并禁用syslog/文件输出。
-environment
出于日志记录目的,指定APM服务器运行的环境。此设置用于在未配置日志输出时选择默认日志输出。支持的值为:systemdcontainermacos_servicewindows_service。如果指定了systemdcontainer,APM服务器默认将日志记录到stdout和stderr。
--path.config
设置配置文件的路径。详情请参见安装布局部分。
--path.data
设置数据文件的路径。详情请参见安装布局部分。
--path.home
设置杂项文件的路径。详情请参见安装布局部分。
--path.logs
设置日志文件的路径。详情请参见安装布局部分。
--strict.perms
设置配置文件的严格权限检查。默认为-strict.perms=true。详情请参见配置文件所有权
-v, --v
记录INFO级别消息。