HTTP 仪器配置

捕获 HTTP 请求和响应头

您可以根据 语义约定 配置代理以捕获预定义的 HTTP 头作为 Span 属性。请使用以下属性定义您要捕获的 HTTP 头

系统属性: otel.instrumentation.http.client.capture-request-headers环境变量: OTEL_INSTRUMENTATION_HTTP_CLIENT_CAPTURE_REQUEST_HEADERS

描述: 一个逗号分隔的 HTTP 头名称列表。HTTP 客户端仪器将捕获所有已配置头名称的 HTTP 请求头值。

系统属性: otel.instrumentation.http.client.capture-response-headers环境变量: OTEL_INSTRUMENTATION_HTTP_CLIENT_CAPTURE_RESPONSE_HEADERS

描述: 一个逗号分隔的 HTTP 头名称列表。HTTP 客户端仪器将捕获所有已配置头名称的 HTTP 响应头值。

系统属性: otel.instrumentation.http.server.capture-request-headers环境变量: OTEL_INSTRUMENTATION_HTTP_SERVER_CAPTURE_REQUEST_HEADERS

描述: 一个逗号分隔的 HTTP 头名称列表。HTTP 服务器仪器将捕获所有已配置头名称的 HTTP 请求头值。

系统属性: otel.instrumentation.http.server.capture-response-headers环境变量: OTEL_INSTRUMENTATION_HTTP_SERVER_CAPTURE_RESPONSE_HEADERS

描述: 一个逗号分隔的 HTTP 头名称列表。HTTP 服务器仪器将捕获所有已配置头名称的 HTTP 响应头值。

所有 HTTP 客户端和服务器仪器都支持这些配置选项。

注意: 表中列出的属性/环境变量名称仍处于实验阶段,因此可能会发生更改。

捕获 Servlet 请求参数

您可以配置代理以捕获预定义的 HTTP 请求参数作为 Span 属性,用于由 Servlet API 处理的请求。请使用以下属性定义您要捕获的 Servlet 请求参数

系统属性: otel.instrumentation.servlet.experimental.capture-request-parameters环境变量: OTEL_INSTRUMENTATION_SERVLET_EXPERIMENTAL_CAPTURE_REQUEST_PARAMETERS

描述: 一个逗号分隔的请求参数名称列表。

注意: 表中列出的属性/环境变量名称仍处于实验阶段,因此可能会发生更改。

配置已知的 HTTP 方法

配置仪器以识别一组备用的 HTTP 请求方法。所有其他方法将被视为 _OTHER

系统属性: otel.instrumentation.http.known-methods环境变量: OTEL_INSTRUMENTATION_HTTP_KNOWN_METHODS

默认: CONNECT,DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT,TRACE
描述: 一个逗号分隔的已知 HTTP 方法列表。

启用实验性 HTTP 遥测

您可以配置代理以捕获其他实验性 HTTP 遥测数据。

系统属性: otel.instrumentation.http.client.emit-experimental-telemetry环境变量: OTEL_INSTRUMENTATION_HTTP_CLIENT_EMIT_EXPERIMENTAL_TELEMETRY

Default: false
描述: 启用实验性 HTTP 客户端遥测。

系统属性: otel.instrumentation.http.server.emit-experimental-telemetry环境变量: OTEL_INSTRUMENTATION_HTTP_SERVER_EMIT_EXPERIMENTAL_TELEMETRY

Default: false
描述: 启用实验性 HTTP 服务器遥测。

对于客户端和服务器 Span,将添加以下属性

  • http.request.body.sizehttp.response.body.size: 分别是请求体和响应体的大小。

对于客户端指标,将创建以下指标

对于服务器指标,将创建以下指标