正在加载

快速入门:将数据发送到 Elastic Cloud Managed OTLP Endpoint

无服务器

在本快速入门指南中,您将学习如何使用 Elastic Cloud Managed OTLP Endpoint 将日志、指标和追踪发送到 Elastic。

Managed OTLP Endpoint 是一项完全托管的服务,专为 Elastic Cloud 用户(最初仅在 Elastic Cloud Serverless 中可用)而设计,可简化 OpenTelemetry 数据的摄取。 它为 OpenTelemetry SDK 和收集器提供了一个端点来发送遥测数据,Elastic 负责处理扩展、数据处理和存储。

此端点专为以下用例而设计

  • 日志和基础设施监控:以 OTLP 格式转发的日志以及以 OTLP 格式的 Host 和 Kubernetes 指标。
  • APM:OTLP 格式的应用程序遥测数据。
  • 一个 Elastic Observability Serverless 项目。要了解更多信息,请参阅 创建可观测性项目
  • 一个以 OTLP 格式转发日志、指标或追踪的系统(任何 OTel 收集器或 SDK—EDOT 或社区)。
  • OTLP 端点仅支持具有增量时态性的直方图。 累积直方图将被丢弃。
  • 基于直方图值的延迟分布由于显式桶直方图的固定边界而具有有限的精度。
  1. 创建一个新的 Observability 项目,或打开一个现有的项目。

  2. 在您的 Elastic Observability Serverless 项目中,转到 添加数据

  3. 您想监控什么? 下,选择 应用程序,然后在 使用以下方式监控您的应用程序 下,选择 OpenTelemetry

    注意

    对于所有用例(包括日志和基础设施监控),请遵循此流程。

  4. 复制 OTEL_EXPORTER_OTLP_ENDPOINT URL。 将 .apm 替换为 .ingest 并保存此值以供以后使用。

  1. 单击 创建 API 密钥 以生成新的 API 密钥。 复制此值以供以后使用。

  2. (可选)通过将一个空的 JSON 对象发送到 /v1/traces 端点来测试您的新 API 密钥。 例如

    curl -X POST \
      -H "Content-Type: application/json" \
      -H "Authorization: ApiKey <api-key>" \
      https://{YOUR_CLUSTER}.ingest.us-east-1.aws.elastic.cloud:443/v1/traces \
      -d '{}'
    

    响应应类似于

    {"partialSuccess":{}}%
    

如果您有一个 OpenTelemetry 收集器或 SDK 正在导出遥测数据,请使用前几个步骤中生成的端点和 API 密钥对其进行配置。

OpenTelemetry 收集器配置

按如下方式配置您的 OTel 收集器

exporters:
  otlp:
    endpoint: "https://my_cluster.ingest.us-east-1.aws.elastic.cloud:443/v1/traces"
    headers: "Authorization": "ApiKey <api-key-value-here>"

有关更多信息,请参阅 OTLP 收集器配置

OpenTelemetry 的 Elastic 发行版 (EDOT) 收集器配置

使用上面 OpenTelemetry 收集器配置 中描述的相同方法配置 EDOT 收集器。 有关更多信息,请参阅 EDOT 语言 SDK 文档

OpenTelemetry SDK 配置

使用以下环境变量配置您的 OTel SDK

  • Elastic Cloud Managed OTLP 端点:OTEL_EXPORTER_OTLP_ENDPOINT
  • Elastic API 密钥:OTEL_EXPORTER_OTLP_HEADERS

例如

export OTEL_EXPORTER_OTLP_ENDPOINT="https://my-api-endpoint:443"
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=ApiKey <api-key>"

有关更多信息,请参阅 OTLP 导出器配置

OpenTelemetry 的 Elastic 发行版 (EDOT) SDK 配置

使用上面 OpenTelemetry SDK 配置 中描述的相同方法配置 EDOT SDK。 有关更多信息,请参阅 EDOT 语言 SDK 文档

没有收集器或 SDK 正在运行? 没问题。 只需几个步骤即可启动 EDOT 收集器

有关更多信息,请参阅 应用程序用例

未找到 Api 密钥前缀

以下错误是由于 API 密钥格式不正确造成的

Exporting failed. Dropping data.
{"kind": "exporter", "data_type": }
"Unauthenticated desc = ApiKey prefix not found"

您必须将 API 密钥格式化为 "Authorization": "ApiKey <api-key-value-here>""Authorization=ApiKey <api-key>",具体取决于您使用的是收集器还是 SDK。 有关更多信息,请参阅 我有一个 OTel 收集器/SDK 正在运行

错误:请求过多

Managed endpoint 具有每个项目的速率限制。 如果您达到此限制,请联系我们的 支持团队

我们很乐意听取您的意见! 通过在我们的 讨论论坛社区 Slack 中向我们发送反馈,帮助改进 Elastic Cloud Managed OTLP Endpoint。

对于 EDOT 收集器反馈,请在 elastic-agent 存储库 中打开一个 issue。

可视化您的 OpenTelemetry 数据。 在 可视化 OTLP 数据 中了解更多信息。

© . All rights reserved.