使用 OpenTelemetry
本指南解释了您的 Quarkus 应用程序如何利用 OpenTelemetry (OTel) 为交互式 Web 应用程序提供可观测性。
在此页面上,我们将展示该扩展与信号无关的功能。
本文档是 Quarkus 可观察性参考指南的一部分,该指南介绍了此组件和其他可观察性相关组件。
|
简介
OpenTelemetry 是一个可观测性框架和工具包,旨在创建和管理遥测数据,例如跟踪、指标和日志。至关重要的是,OpenTelemetry 与供应商和工具无关。
Quarkus 提供用于跟踪的手动和自动检测,以及用于指标的手动检测功能。
这将允许基于 Quarkus 的应用程序可以通过支持 OpenTelemetry 的工具和服务进行观察。
Quarkus 中的自动指标检测由 Quarkus Micrometer 扩展完成。我们计划在将来提供一个桥梁,使这些指标也可以在 OpenTelemetry 中使用。 |
Quarkus 支持 OpenTelemetry 自动配置。这些配置与您在 OpenTelemetry SDK 自动配置中看到的内容相匹配,带有 quarkus.*
前缀。
本指南提供了 OpenTelemetry 扩展及其使用方法的横切解释。如果您需要有关任何特定信号(跟踪或指标)的详细信息,请参阅特定信号指南。
随着 OpenTelemetry 指标的引入,最初的单页指南必须按信号类型进行拆分,如下所示
OpenTelemetry 跟踪指南
默认情况下,跟踪功能已受支持且已启用。
使用扩展
如果您已经有 Quarkus 项目,则可以通过在项目基本目录中运行以下命令将 quarkus-opentelemetry
扩展添加到其中
quarkus extension add opentelemetry
./mvnw quarkus:add-extension -Dextensions='opentelemetry'
./gradlew addExtension --extensions='opentelemetry'
这会将以下内容添加到您的构建文件中
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-opentelemetry</artifactId>
</dependency>
implementation("io.quarkus:quarkus-opentelemetry")
创建配置
默认情况下,导出器将使用 gRPC 协议和端点 https://:4317
批量发送数据。
如果您需要更改任何默认属性值,以下是如何在应用程序中使用 src/main/resources/application.properties
文件配置默认 OTLP gRPC 导出器的示例
quarkus.application.name=myservice (1)
quarkus.otel.exporter.otlp.endpoint=https://:4317 (2)
quarkus.otel.exporter.otlp.headers=authorization=Bearer my_secret (3)
quarkus.log.console.format=%d{HH:mm:ss} %-5p traceId=%X{traceId}, parentId=%X{parentId}, spanId=%X{spanId}, sampled=%X{sampled} [%c{2.}] (%t) %s%e%n (4)
# Alternative to the console log
quarkus.http.access-log.pattern="...traceId=%{X,traceId} spanId=%{X,spanId}" (5)
1 | 从应用程序创建的所有遥测数据将包括一个 OpenTelemetry Resource 属性,指示遥测数据是由 myservice 应用程序创建的。如果未设置,则默认为构件 ID。 |
2 | gRPC 端点用于发送遥测数据。如果未设置,则默认为 https://:4317 。 |
3 | 通常用于身份验证的可选 gRPC 标头 |
4 | 将跟踪信息添加到日志消息中。 |
5 | 您也可以仅将跟踪信息放入访问日志中。在这种情况下,您必须省略控制台日志格式中的信息。 |
我们为连接相关属性提供信号无关的配置,这意味着当您设置时,可以对跟踪和指标使用相同的属性
quarkus.otel.exporter.otlp.endpoint=https://:4317
如果您需要为每个信号设置不同的配置,可以使用特定属性
quarkus.otel.exporter.otlp.traces.endpoint=http://trace-uri:4317 (1)
quarkus.otel.exporter.otlp.metrics.endpoint=http://metrics-uri:4317 (2)
quarkus.otel.exporter.otlp.logs.endpoint=http://logs-uri:4317 (3)
1 | 跟踪导出器的端点。 |
2 | 指标导出器的端点。 |
3 | 日志导出器的端点。 |
如果您需要将跨度和日志在完成后立即导出(例如,在无服务器环境/应用程序中),则可以将此属性设置为 true
。这将替换数据的默认批处理。
quarkus.otel.simple=true
禁用 OpenTelemetry 扩展的全部或部分
添加依赖项后,默认情况下扩展将生成跟踪数据。要启用指标或全局或部分禁用 OpenTelemetry 扩展,可以使用以下属性(它们是从下面的配置参考中提取的)
受影响的信号 | 属性名称 | 默认值 | 描述 |
---|---|---|---|
全部 |
|
true |
如果为 false,则在构建时禁用 OpenTelemetry 的使用。 |
全部 |
|
false |
来自 OpenTelemetry 自动配置。如果为 true,将在运行时禁用 OpenTelemetry SDK 的使用。 |
所有输出 |
|
true |
已弃用,即将删除。 如果为 false,将在构建时禁用默认 OTLP 导出器。 |
跟踪 |
|
true |
如果为 false,则在构建时禁用 OpenTelemetry 跟踪的使用。 |
跟踪输出 |
|
cdi |
用于跟踪的导出器列表,以逗号分隔。具有来自ExporterType的值之一: |
指标 |
|
false |
默认情况下,指标在构建时处于禁用状态,因为它们是实验性的。 |
指标输出 |
|
cdi |
用于指标的导出器列表,以逗号分隔。具有来自ExporterType的值之一: |
日志 |
|
false |
默认情况下,日志在构建时处于禁用状态,因为它们是实验性的。 |
日志输出 |
|
cdi |
用于日志的导出器列表,以逗号分隔。具有来自ExporterType的值之一: |
日志输出 |
|
true |
如果为 false,则在运行时禁用 OpenTelemetry 日志处理程序。这将删除 Quarkus 日志记录系统 (JBoss LogManager) 和 OpenTelemetry 日志之间的桥梁。 |
如果您需要在运行时启用或禁用导出器,则可以使用 采样器,因为它能够根据需要过滤掉所有跨度。
可以在跟踪中禁用特定的检测组件,例如忽略客户端请求但保留服务器请求。有关更多详细信息,请查看《OpenTelemetry 跟踪指南》。
资源
默认
默认情况下,以下属性将添加到资源。
属性名称 | 内容示例 | 来源 |
---|---|---|
service.name |
"opentelemetry-quickstart" |
该值来自 artifactId、 |
host.name |
"myHost" |
在启动时解析 |
service.version |
"1.0-SNAPSHOT" |
在构建时从构件版本解析 |
telemetry.sdk.language |
"java" |
静态值 |
telemetry.sdk.name |
"opentelemetry" |
在构建时解析 |
telemetry.sdk.version |
"1.32.0" |
在构建时解析 |
webengine.name |
"Quarkus" |
静态值 |
webengine.version |
"999-SNAPSHOT" |
在构建时解析的 Quarkus 版本 |
使用配置
您可以通过设置 OpenTelemetry 配置参考中描述的 quarkus.otel.resource.attributes
配置属性来添加其他属性。由于此属性可以在运行时被覆盖,因此 OpenTelemetry 扩展将按照 Quarkus 配置参考中描述的优先级顺序选取其值。
quarkus.otel.resource.attributes=deployment.environment=dev,service.name=cart,service.namespace=shopping
这将为 deployment.environment
、service.name
和 service.namespace
添加属性到资源中,并将其包含在跟踪和指标中。
使用 CDI Bean
如果出于任何原因您需要使用自定义资源或由 OpenTelemetry SDK 扩展之一提供的资源,则可以创建多个资源生产者。OpenTelemetry 扩展将检测 Resource
CDI Bean,并在配置 OTel SDK 时合并它们。
@ApplicationScoped
public class CustomConfiguration {
@Produces
@ApplicationScoped
public Resource osResource() {
return OsResource.get();
}
@Produces
@ApplicationScoped
public Resource ecsResource() {
return EcsResource.get();
}
}
语义约定
OpenTelemetry 提供了一组 语义约定,用于标准化检测收集的数据。
创建手动检测时,在命名指标或属性时,应遵循这些约定,不要创建新名称来表示现有约定。这将使跨服务的数据关联更容易执行。
导出器
默认
Quarkus OpenTelemetry 扩展使用其自己的信号导出器,这些导出器构建在 Vert.x 之上,以获得最佳性能和可维护性。
导出器通过 CDI 自动连接,这就是 quarkus.otel.traces.exporter
和 quarkus.otel.metrics.exporter
属性默认为 cdi
的原因。
quarkus.otel.exporter.otlp.protocol
默认为 grpc
,但也可以使用 http/protobuf
。
如果更改协议,则还需要更改端点中的端口。grpc 的默认端口为 4317 ,http/protobuf 的默认端口为 4318 。 |
在 Quarkiverse 上
其他导出器将在 Quarkiverse quarkus-opentelemetry-exporter 项目中提供。
目前,以下导出器可用(可能已过时),用于
-
旧版 Jaeger
-
Microsoft Azure
-
Google Cloud
同样在 Quarkiverse 上,Quarkus AWS SDK 与 OpenTelemetry 集成。
日志记录导出器(用于调试)
您可以将所有指标输出到控制台,以进行调试/开发。
不要在生产中使用它。 |
您需要在项目中添加以下依赖项
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-logging</artifactId>
</dependency>
implementation("io.opentelemetry:opentelemetry-exporter-logging")
然后,在 application.properties
文件中将导出器设置为 logging
quarkus.otel.metrics.exporter=logging (1)
quarkus.otel.metric.export.interval=10000ms (2)
quarkus.otel.traces.exporter=logging (3)
1 | 将指标导出器设置为 logging 。通常您不需要设置此项。默认为 cdi 。 |
2 | 设置导出指标的间隔。默认值为 1m ,对于调试来说太长了。 |
3 | 将跟踪导出器设置为 logging 。通常您不需要设置此项。默认为 cdi 。 |
可视化数据
我们推荐 Grafana-OTel-LGTM 入门。
这提供了一个使用“all-in-one”Grafana OTel LGTM 的 Quarkus 开发服务。
Grafana 用于可视化数据,Loki 用于存储日志,Tempo 用于存储跟踪,Prometheus 用于存储指标。还提供了一个 OTel 收集器来接收数据。
这提供了一种可视化应用程序生成的所有 OpenTelemetry 数据的简便方法。
您还可以使用 日志记录导出器将所有跟踪和指标输出到控制台。
OpenTelemetry 配置参考
Quarkus 支持跟踪的 OpenTelemetry 自动配置。这些配置与您在 OpenTelemetry SDK 自动配置中看到的内容相匹配,并添加了通常的 quarkus.*
前缀。
Quarkus OpenTelemetry 配置属性现在具有 quarkus.otel.*
前缀。
构建时固定的配置属性 - 所有其他配置属性都可以在运行时覆盖
配置属性 |
类型 |
默认 |
---|---|---|
如果为 false,则在构建时禁用 OpenTelemetry 的使用。所有其他 Otel 属性将在运行时被忽略。 将从旧属性 quarkus.opentelemetry.enabled 中选取值 默认为 环境变量: 显示更多 |
布尔值 |
|
我们是否应该对跨度和日志记录使用简单的处理器。这将禁用批处理,并且导出器将立即发送遥测数据。建议用于无服务器应用程序。 默认为 环境变量: 显示更多 |
布尔值 |
|
Quarkus 支持的导出器列表。 用于跟踪的导出器列表,以逗号分隔。具有 Quarkus 上的默认值为 环境变量: 显示更多 |
字符串列表 |
|
用于跟踪的采样器。 具有 回退到旧属性 环境变量: 显示更多 |
字符串 |
|
是否应在尽力而为的基础上将 OpenTelemetry 最终用户属性添加为 Span 属性。 环境变量: 显示更多 |
布尔值 |
|
使用 OpenTelemetry 启用指标。 Open Telemetry SDK 中没有此属性。它是 Quarkus 特有的。 如果此值为 true,将启用对 OpenTelemetry 指标的支持。默认情况下启用 OpenTelemetry SDK ( 环境变量: 显示更多 |
布尔值 |
|
字符串列表 |
|
|
使用 OpenTelemetry 启用日志。 Open Telemetry SDK 中没有此属性。它是 Quarkus 特有的。 如果此值为 true,将启用对 OpenTelemetry 日志的支持。默认情况下启用 OpenTelemetry SDK ( 环境变量: 显示更多 |
布尔值 |
|
字符串列表 |
|
|
要使用的传播器。使用逗号分隔的列表表示多个传播器。 具有来自 默认为 环境变量: 显示更多 |
字符串列表 |
|
布尔值 |
|
|
布尔值 |
|
|
启用由 RESTEasy Classic 支持的 REST 客户端的检测。 环境变量: 显示更多 |
布尔值 |
|
布尔值 |
|
|
启用 RESTEasy Classic 的检测。 环境变量: 显示更多 |
布尔值 |
|
布尔值 |
|
|
选择安全事件类型。 环境变量: 显示更多 |
|
|
如果为 true,则禁用 OpenTelemetry SDK。运行时配置。 默认为 环境变量: 显示更多 |
布尔值 |
|
禁止从跟踪集合中获取非应用程序 uri。这将禁止跟踪 提供自定义 这是 Quarkus 特有的属性。默认情况下启用禁止非应用程序 uri。 回退到旧属性 环境变量: 显示更多 |
布尔值 |
|
逗号分隔,禁止从跟踪集合中获取应用程序 uri。 这将禁止由此属性设置的所有 uri。 如果您使用的是 环境变量: 显示更多 |
字符串列表 |
|
从跟踪集合中包含静态资源。 这是 Quarkus 特有的属性。默认情况下禁用包含静态资源。提供自定义 回退到旧属性 环境变量: 显示更多 |
布尔值 |
|
采样器参数。取决于 将库存采样器设置为 默认为 环境变量: 显示更多 |
字符串 |
|
两次指标导出尝试开始之间的间隔。 默认为 1 分钟。 环境变量: 显示更多 |
|
|
确定是否启用 OpenTelemetry 日志记录处理程序。 这是 Quarkus 特有的属性。默认情况下启用 OpenTelemetry 日志记录处理程序。 环境变量: 显示更多 |
布尔值 |
|
用于 OpenTelemetry 日志记录处理程序的日志级别。 这是 Quarkus 特有的属性。默认日志级别为 ALL。 环境变量: 显示更多 |
|
|
属性值的最大长度。适用于跨度和日志。 默认情况下,没有限制。 环境变量: 显示更多 |
字符串 |
|
属性的最大数量。适用于跨度、跨度事件、跨度链接和日志。 默认值为 环境变量: 显示更多 |
整数 |
|
跨度属性值的最大长度。优先于 默认情况下,没有限制。 环境变量: 显示更多 |
整数 |
|
每个跨度的最大属性数。优先于 默认值为 环境变量: 显示更多 |
整数 |
|
每个跨度的最大事件数。 默认值为 环境变量: 显示更多 |
整数 |
|
每个跨度的最大链接数。 默认值为 环境变量: 显示更多 |
整数 |
|
批处理跨度处理器两次连续导出之间的间隔 默认为 环境变量: 显示更多 |
|
|
批处理跨度处理器的最大队列大小。 默认为 环境变量: 显示更多 |
整数 |
|
批处理跨度处理器的最大批处理大小。 默认为 环境变量: 显示更多 |
整数 |
|
批处理跨度处理器导出数据的最大允许时间 默认为 环境变量: 显示更多 |
|
|
批处理日志记录处理器两次连续导出之间的间隔 默认为 环境变量: 显示更多 |
|
|
批处理日志记录处理器的最大队列大小。 默认为 环境变量: 显示更多 |
整数 |
|
批处理日志记录处理器的最大批处理大小。 默认为 环境变量: 显示更多 |
整数 |
|
批处理日志记录处理器导出数据的最大允许时间 默认为 环境变量: 显示更多 |
|
|
以以下格式指定资源属性: 环境变量: 显示更多 |
字符串列表 |
|
指定逻辑服务名称。优先于使用 otel.resource.attributes 定义的 service.name 和来自 quarkus.application.name 的 service.name。 默认为 环境变量: 显示更多 |
字符串 |
|
指定已过滤的资源属性键。 环境变量: 显示更多 |
字符串列表 |
|
Quarkus 将等待 OpenTelemetry SDK 刷新未发送的跨度并关闭的最大时间。 环境变量: 显示更多 |
|
|
布尔值 |
|
|
启用 Vert.x Event Bus 的 Instrumentation。 环境变量: 显示更多 |
布尔值 |
|
启用 Vert.x SQL Client 的 Instrumentation。 环境变量: 显示更多 |
布尔值 |
|
启用 Vert.x Redis Client 的 Instrumentation。 环境变量: 显示更多 |
布尔值 |
|
启用 JVM Metrics 的 Instrumentation。 环境变量: 显示更多 |
布尔值 |
|
启用 HTTP Server Metrics 的 Instrumentation。 环境变量: 显示更多 |
布尔值 |
|
优先使用 OpenTelemetry 配置 默认情况下,Quarkus 配置优先于 OpenTelemetry 配置。 环境变量: 显示更多 |
布尔值 |
|
设置 OTLP 端点以发送遥测数据。如果未设置,则默认为 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 如果协议是 环境变量: 显示更多 |
字符串 |
|
用作与导出器请求关联的标头的键值对。格式类似于 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串列表 |
|
设置用于压缩有效负载的方法。如果未设置,则禁用压缩。当前支持的压缩方法包括 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
|
|
设置等待收集器处理导出的遥测数据批处理的最长时间。如果未设置,则默认为 `OtlpExporterRuntimeConfig#DEFAULT_TIMEOUT_SECS` 秒。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
|
|
OTLP 定义了遥测数据的编码以及用于在客户端和服务器之间交换数据的协议。根据导出器,可用的协议将有所不同。 目前,仅允许 请注意,更改协议还需要更改端点中的端口。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
密钥文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
证书文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
信任证书文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
要使用的 TLS 配置的名称。 如果未设置且配置了默认 TLS 配置( 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
是否必须使用代理连接。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
布尔值 |
|
设置代理用户名。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置代理密码。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置代理端口。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
整数 |
|
设置代理主机。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置 OTLP 端点以发送遥测数据。如果未设置,则默认为 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 如果协议是 环境变量: 显示更多 |
字符串 |
|
用作与导出器请求关联的标头的键值对。格式类似于 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串列表 |
|
设置用于压缩有效负载的方法。如果未设置,则禁用压缩。当前支持的压缩方法包括 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
|
|
设置等待收集器处理导出的遥测数据批处理的最长时间。如果未设置,则默认为 `OtlpExporterRuntimeConfig#DEFAULT_TIMEOUT_SECS` 秒。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
|
|
OTLP 定义了遥测数据的编码以及用于在客户端和服务器之间交换数据的协议。根据导出器,可用的协议将有所不同。 目前,仅允许 请注意,更改协议还需要更改端点中的端口。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
密钥文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
证书文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
信任证书文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
要使用的 TLS 配置的名称。 如果未设置且配置了默认 TLS 配置( 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
是否必须使用代理连接。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
布尔值 |
|
设置代理用户名。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置代理密码。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置代理端口。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
整数 |
|
设置代理主机。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置 OTLP 端点以发送遥测数据。如果未设置,则默认为 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 如果协议是 环境变量: 显示更多 |
字符串 |
|
用作与导出器请求关联的标头的键值对。格式类似于 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串列表 |
|
设置用于压缩有效负载的方法。如果未设置,则禁用压缩。当前支持的压缩方法包括 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
|
|
设置等待收集器处理导出的遥测数据批处理的最长时间。如果未设置,则默认为 `OtlpExporterRuntimeConfig#DEFAULT_TIMEOUT_SECS` 秒。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
|
|
OTLP 定义了遥测数据的编码以及用于在客户端和服务器之间交换数据的协议。根据导出器,可用的协议将有所不同。 目前,仅允许 请注意,更改协议还需要更改端点中的端口。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
密钥文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
证书文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
信任证书文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
要使用的 TLS 配置的名称。 如果未设置且配置了默认 TLS 配置( 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
是否必须使用代理连接。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
布尔值 |
|
设置代理用户名。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置代理密码。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置代理端口。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
整数 |
|
设置代理主机。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
首选的输出聚合时效性。选项包括 DELTA、LOWMEMORY 和 CUMULATIVE。 如果为 CUMULATIVE,则所有工具都将具有累积时效性。如果为 DELTA,则计数器(同步和异步)和直方图将为 delta,上下计数器(同步和异步)将为累积。 如果为 LOWMEMORY,则同步计数器和直方图将为 delta,异步计数器和上下计数器(同步和异步)将为累积。 默认为 CUMULATIVE。 环境变量: 显示更多 |
字符串 |
|
首选的默认直方图聚合。 选项包括 BASE2_EXPONENTIAL_BUCKET_HISTOGRAM 和 EXPLICIT_BUCKET_HISTOGRAM。 默认为 EXPLICIT_BUCKET_HISTOGRAM。 环境变量: 显示更多 |
字符串 |
|
设置 OTLP 端点以发送遥测数据。如果未设置,则默认为 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 如果协议是 环境变量: 显示更多 |
字符串 |
|
用作与导出器请求关联的标头的键值对。格式类似于 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串列表 |
|
设置用于压缩有效负载的方法。如果未设置,则禁用压缩。当前支持的压缩方法包括 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
|
|
设置等待收集器处理导出的遥测数据批处理的最长时间。如果未设置,则默认为 `OtlpExporterRuntimeConfig#DEFAULT_TIMEOUT_SECS` 秒。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
|
|
OTLP 定义了遥测数据的编码以及用于在客户端和服务器之间交换数据的协议。根据导出器,可用的协议将有所不同。 目前,仅允许 请注意,更改协议还需要更改端点中的端口。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
密钥文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
证书文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
信任证书文件(Pem 格式)的逗号分隔列表的路径。 环境变量: 显示更多 |
字符串列表 |
|
要使用的 TLS 配置的名称。 如果未设置且配置了默认 TLS 配置( 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
是否必须使用代理连接。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
布尔值 |
|
设置代理用户名。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置代理密码。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
|
设置代理端口。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
整数 |
|
设置代理主机。 有一个通用属性,它将应用于所有信号,还有一个特定于信号的属性,遵循以下模式: 环境变量: 显示更多 |
字符串 |
关于 Duration 格式
要写入持续时间值,请使用标准的 您还可以使用简化的格式,以数字开头
在其他情况下,简化格式将被转换为
|