菜单
开源

实验性

otelcol.receiver.datadog

otelcol.receiver.datadog通过网络接收Datadog指标和跟踪,并将其转发到其他otelcol.*组件。

您可以通过为它们提供不同的标签来指定多个otelcol.receiver.datadog组件。

用法

otelcol.receiver.datadog "LABEL" {
  output {
    metrics = [...]
    traces  = [...]
  }
}

参数

otelcol.receiver.datadog支持以下参数

名称类型描述默认值必填
endpointstringhost:port 以便在此上监听流量。"localhost:8126"no
max_request_body_sizestring服务器将允许的最大请求体大小。20MiBno
include_metadataboolean将传入连接元数据传播到下游消费者。falseno
read_timeoutdurationHTTP服务器的请求读取超时。"60s"no
compression_algorithmslist(string)服务器可以接受的压缩算法列表。["", "gzip", "zstd", "zlib", "snappy", "deflate"]no

默认情况下,otelcol.receiver.datadoglocalhost上监听HTTP连接。要将HTTP服务器暴露给您网络上的其他机器,使用具有要监听IP地址的endpoint进行配置,或使用0.0.0.0:8126以监听所有网络接口。

阻塞

otelcol.receiver.datadog定义内部支持以下块

层次结构描述必填
tlstls配置HTTP服务器的TLS。no
corscors配置HTTP服务器的CORS。no
debug_metricsdebug_metrics配置此组件生成的指标以监控其状态。no
outputoutput配置将收到的跟踪发送到何处。yes

tls块

tls块配置服务器使用的TLS设置。如果没有提供tls块,则不会使用TLS对服务器进行连接。

以下参数是支持的

名称类型描述默认值必填
ca_filestringCA文件路径。no
ca_pemstring用于验证服务器的CA PEM编码文本。no
cert_filestringTLS证书路径。no
cert_pemstring用于客户端认证的证书PEM编码文本。no
include_system_ca_certs_poolboolean是否要加载与证书颁发机构一起加载的系统证书颁发机构池。falseno
key_filestringTLS证书密钥的路径。no
key_pem密钥客户端认证的密钥PEM编码文本。no
max_versionstring连接可接受的最大TLS版本。"TLS 1.3"no
min_versionstring连接可接受的最小TLS版本。"TLS 1.2"no
cipher_suiteslist(string)一个列表,其中包含TLS传输可以使用的TLS加密套件。[]no
reload_intervalduration证书重新加载的持续时间。"0s"no
client_ca_filestring服务器验证客户端证书时要使用的TLS证书路径。no

如果将reload_interval设置为"0s",则证书永远不会重新加载。

以下参数对是相互排斥的,不能同时设置

  • ca_pemca_file
  • cert_pemcert_file
  • key_pemkey_file

如果留空cipher_suites,将使用一个安全默认列表。有关支持加密套件的列表,请参阅Go加密套件文档

client_ca_file中的ClientCAClientAuth设置为RequireAndVerifyClientCert。有关更多信息,请参阅Go TLS文档

cors block

cors块配置HTTP服务器的CORS设置。

以下参数是支持的

名称类型描述默认值必填
allowed_originslist(string)Origin报头允许的值。[]no
allowed_headerslist(string)CORS请求接受的报头。["X-Requested-With"]no
max_age数字配置响应报头Access-Control-Max-Age0no

allowed_headers参数指定哪些报头来自CORS请求是可以接受的。以下报头始终隐式允许

  • Accept
  • Accept-Language
  • Content-Type
  • Content-Language

如果allowed_headers包含"*",则允许所有报头。

debug_metrics block

debug_metrics块配置此组件生成的指标来监测其状态。

以下参数是支持的

名称类型描述默认值必填
disable_high_cardinality_metricsboolean是否禁用某些高基数指标。trueno
levelstring控制包装收集器发出的指标的详细程度。"detailed"no

disable_high_cardinality_metrics是Grafana Alloy中对OpenTelemetry Collector中telemetry.disableHighCardinalityMetrics功能门等价的。它移除了可能导致高基数指标的特性。例如,从HTTP和gRPC连接的指标中移除包含IP地址和端口号的特性。

注意

如果配置了disable_high_cardinality_metrics,则它仅适用于otelcol.exporter.*otelcol.receiver.*组件。

level是OpenTelemetry Collector中telemetry.metrics.level功能门的Alloy等价物。可能的值是"none""basic""normal""detailed"

output block

output块配置一系列组件,以将结果遥测数据转发到。

以下参数是支持的

名称类型描述默认值必填
logs列表(otelcol.Consumer)发送到日志的消费者列表。[]no
metrics列表(otelcol.Consumer)发送到指标的消费者列表。[]no
traces列表(otelcol.Consumer)发送到追踪的消费者列表。[]no

您必须指定output块,但所有参数都是可选的。默认情况下,遥测数据被丢弃。根据需要配置metricslogstraces参数以将遥测数据发送到其他组件。

导出自定义字段

otelcol.receiver.datadog不导出任何字段。

组件健康

otelcol.receiver.datadog只有在配置了无效配置时才会报告为不健康。

调试信息

代码otelcol.receiver.datadog不公开任何特定组件的调试信息。

示例

此示例在最终将数据发送到具有OTLP功能的端点之前,通过批处理程序转发接收到的遥测数据

otelcol.receiver.datadog "default" {
  output {
    metrics = [otelcol.processor.batch.default.input]
    traces  = [otelcol.processor.batch.default.input]
  }
}

otelcol.processor.batch "default" {
  output {
    metrics = [otelcol.exporter.otlp.default.input]
    traces  = [otelcol.exporter.otlp.default.input]
  }
}

otelcol.exporter.otlp "default" {
  client {
    endpoint = env("OTLP_ENDPOINT")
  }
}

兼容组件

otelcol.receiver.datadog可以接受以下组件的参数

注意

连接某些组件可能不合理,或者组件可能需要进一步配置才能正确工作。有关更多详细信息,请参阅链接的文档。