Elastic APM 代理配置 API编辑

APM 服务器公开了一些 API 端点,允许 Elastic APM 代理查询 APM 服务器以获取配置更改。有关此功能的更多信息,请参阅Kibana 中的 APM 代理配置

代理配置端点编辑

名称 端点

代理配置接收

/config/v1/agents

RUM 配置接收

/config/v1/rum/agents

代理配置端点接受 HTTP GETHTTP POST 请求。如果配置了API 密钥密钥,则对此端点的请求必须经过身份验证。

HTTP GET编辑

service.name 是必需的查询字符串参数。

http(s)://{hostname}:{port}/config/v1/agents?service.name=SERVICE_NAME
HTTP POST编辑

将参数编码为正文中的 JSON 对象。service.name 是必需的参数。

http(s)://{hostname}:{port}/config/v1/agents
{
  "service": {
      "name": "test-service",
      "environment": "all"
  },
  "CAPTURE_BODY": "off"
}
响应编辑
  • 成功 - 200
  • APM 服务器配置为从 Elasticsearch 获取代理配置,但配置无效 - 403
  • APM 服务器正在启动或 Elasticsearch 不可访问 - 503
示例请求编辑

示例代理配置 GET 请求,包括服务名称“test-service”

curl -i http://127.0.0.1:8200/config/v1/agents?service.name=test-service

示例代理配置 POST 请求,包括服务名称“test-service”

curl -X POST http://127.0.0.1:8200/config/v1/agents \
  -H "Authorization: Bearer secret_token" \
  -H 'content-type: application/json' \
  -d '{"service": {"name": "test-service"}}'
示例响应编辑
HTTP/1.1 200 OK
Cache-Control: max-age=30, must-revalidate
Content-Type: application/json
Etag: "7b23d63c448a863fa"
Date: Mon, 24 Feb 2020 20:53:07 GMT
Content-Length: 98

{
    "capture_body": "off",
    "transaction_max_spans": "500",
    "transaction_sample_rate": "0.3"
}