Link Search Menu Expand Document Documentation Menu

核心 API

所有 OpenSearch Data Prepper 实例都提供一个带有控制 API 的服务器。默认情况下,此服务器在端口 4900 上运行。某些插件,特别是源插件,可能会暴露在不同端口上运行的其他服务器。这些插件的配置独立于核心 API。例如,要关闭 Data Prepper,您可以运行以下 curl 请求

curl -X POST https://:4900/shutdown

API

下表列出了可用的 API。

名称 描述
GET /list
POST /list
返回正在运行的管道列表。
POST /shutdown 启动 Data Prepper 的优雅关闭。
GET /metrics/prometheus
POST /metrics/prometheus
以 Prometheus 文本格式返回 Data Prepper 指标的抓取结果。此 API 在 Data Prepper 配置文件 data-prepper-config.yaml 中作为 metricsRegistries 参数提供,并且包含 Prometheus 作为注册表的一部分。
GET /metrics/sys
POST /metrics/sys
以 Prometheus 文本格式返回 JVM 指标。此 API 在 Data Prepper 配置文件 data-prepper-config.yaml 中作为 metricsRegistries 参数提供,并且包含 Prometheus 作为注册表的一部分。

配置服务器

您可以通过 data-prepper-config.yaml 文件配置 Data Prepper 核心 API。

SSL/TLS 连接

本项目许多入门指南在端点上禁用 SSL

ssl: false

要在 Data Prepper 端点上启用 SSL,请使用以下选项配置您的 data-prepper-config.yaml 文件

ssl: true
keyStoreFilePath: "/usr/share/data-prepper/keystore.p12"
keyStorePassword: "secret"
privateKeyPassword: "secret"

有关使用 SSL 配置 Data Prepper 服务器的更多信息,请参阅服务器配置。如果您使用的是自签名证书,可以在请求中添加 -k 标志,以快速测试带有 SSL 的核心 API。使用以下 shutdown 请求测试带有 SSL 的核心 API

curl -k -X POST https://:4900/shutdown 

身份验证

Data Prepper 核心 API 支持 HTTP 基本认证。您可以使用 data-prepper-config.yaml 文件中的以下配置设置用户名和密码

authentication:
  http_basic:
    username: "myuser"
    password: "mys3cr3t"

您可以使用以下配置禁用核心端点的认证。请谨慎使用此功能,因为关闭 API 及其他 API 将对任何能够通过网络访问您的 Data Prepper 实例的人员开放。

authentication:
  unauthenticated:

对等转发器

对等转发器可以配置为在多个 Data Prepper 节点之间启用有状态聚合。有关配置对等转发器的更多信息,请参阅对等转发器。它受到 service_map_statefulotel_traces_rawaggregate 处理器支持。

关闭超时

当您运行 Data Prepper shutdown API 时,该过程会优雅地关闭并清除 ExecutorService sink 和 ExecutorService 处理器中的所有剩余数据。这两个进程的默认关闭超时时间均为 10 秒。您可以使用以下可选的 data-prepper-config.yaml 文件参数配置超时时间

processorShutdownTimeout: "PT15M"
sinkShutdownTimeout: 30s

这些参数的值通过 Data Prepper Duration Deserializer 解析为 Duration 对象。

剩余 350 字符

有问题?

想贡献?