Skip to content

Commit e2d7946

Browse files
liustanleyDougManton
authored andcommitted
[exporter/datadogexporter] Add example for host metadata (open-telemetry#31604)
**Description:** Adds example `host-metadata.yaml` that demonstrates use of [Mapping OpenTelemetry Semantic Conventions to Infrastructure List Host Information](https://docs.datadoghq.com/opentelemetry/schema_semantics/host_metadata) with the exporter and connector.
1 parent 0bcbcc5 commit e2d7946

File tree

6 files changed

+61
-0
lines changed

6 files changed

+61
-0
lines changed

connector/datadogconnector/go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,3 +266,5 @@ replace github.com/open-telemetry/opentelemetry-collector-contrib/processor/k8sa
266266
replace github.com/open-telemetry/opentelemetry-collector-contrib/extension/storage => ../../extension/storage
267267

268268
replace github.com/openshift/api v3.9.0+incompatible => github.com/openshift/api v0.0.0-20180801171038-322a19404e37
269+
270+
replace github.com/open-telemetry/opentelemetry-collector-contrib/processor/transformprocessor => ../../processor/transformprocessor
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
receivers:
2+
otlp:
3+
protocols:
4+
http:
5+
endpoint: "localhost:4318"
6+
grpc:
7+
endpoint: "localhost:4317"
8+
processors:
9+
probabilistic_sampler:
10+
sampling_percentage: 20
11+
batch:
12+
send_batch_max_size: 1000
13+
send_batch_size: 100
14+
timeout: 10s
15+
transform:
16+
metric_statements:
17+
- context: resource
18+
statements:
19+
- set(attributes["datadog.host.use_as_metadata"], true)
20+
trace_statements:
21+
- context: resource
22+
statements:
23+
- set(attributes["datadog.host.use_as_metadata"], true)
24+
connectors:
25+
datadog/connector:
26+
exporters:
27+
datadog:
28+
api:
29+
key: ${env:DD_API_KEY}
30+
service:
31+
pipelines:
32+
traces:
33+
receivers: [otlp]
34+
processors: [batch, transform]
35+
exporters: [datadog/connector]
36+
traces/2:
37+
receivers: [datadog/connector]
38+
processors: [batch, probabilistic_sampler]
39+
exporters: [datadog]
40+
metrics:
41+
receivers: [datadog/connector]
42+
processors: [batch, transform]
43+
exporters: [datadog]

exporter/datadogexporter/examples_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import (
2525
"github.com/open-telemetry/opentelemetry-collector-contrib/processor/k8sattributesprocessor"
2626
"github.com/open-telemetry/opentelemetry-collector-contrib/processor/probabilisticsamplerprocessor"
2727
"github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor"
28+
"github.com/open-telemetry/opentelemetry-collector-contrib/processor/transformprocessor"
2829
"github.com/open-telemetry/opentelemetry-collector-contrib/receiver/dockerstatsreceiver"
2930
"github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filelogreceiver"
3031
"github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver"
@@ -112,6 +113,7 @@ func newTestComponents(t *testing.T) otelcol.Factories {
112113
k8sattributesprocessor.NewFactory(),
113114
resourcedetectionprocessor.NewFactory(),
114115
probabilisticsamplerprocessor.NewFactory(),
116+
transformprocessor.NewFactory(),
115117
}...,
116118
)
117119
require.NoError(t, err)

exporter/datadogexporter/go.mod

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ require (
2828
github.com/open-telemetry/opentelemetry-collector-contrib/processor/k8sattributesprocessor v0.96.0
2929
github.com/open-telemetry/opentelemetry-collector-contrib/processor/probabilisticsamplerprocessor v0.96.0
3030
github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor v0.96.0
31+
github.com/open-telemetry/opentelemetry-collector-contrib/processor/transformprocessor v0.96.0
3132
github.com/open-telemetry/opentelemetry-collector-contrib/receiver/dockerstatsreceiver v0.96.0
3233
github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filelogreceiver v0.96.0
3334
github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver v0.96.0
@@ -81,6 +82,7 @@ require (
8182
github.com/DataDog/zstd v1.5.2 // indirect
8283
github.com/Microsoft/go-winio v0.6.1 // indirect
8384
github.com/Showmax/go-fqdn v1.0.0 // indirect
85+
github.com/alecthomas/participle/v2 v2.1.1 // indirect
8486
github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect
8587
github.com/armon/go-metrics v0.4.1 // indirect
8688
github.com/beorn7/perks v1.0.1 // indirect
@@ -154,6 +156,7 @@ require (
154156
github.com/hashicorp/nomad/api v0.0.0-20230721134942-515895c7690c // indirect
155157
github.com/hashicorp/serf v0.10.1 // indirect
156158
github.com/hetznercloud/hcloud-go/v2 v2.4.0 // indirect
159+
github.com/iancoleman/strcase v0.3.0 // indirect
157160
github.com/imdario/mergo v0.3.16 // indirect
158161
github.com/inconshreveable/mousetrap v1.1.0 // indirect
159162
github.com/ionos-cloud/sdk-go/v6 v6.1.9 // indirect
@@ -189,6 +192,7 @@ require (
189192
github.com/open-telemetry/opentelemetry-collector-contrib/internal/common v0.96.0 // indirect
190193
github.com/open-telemetry/opentelemetry-collector-contrib/internal/docker v0.96.0 // indirect
191194
github.com/open-telemetry/opentelemetry-collector-contrib/internal/filter v0.96.0 // indirect
195+
github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl v0.96.0 // indirect
192196
github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.96.0 // indirect
193197
github.com/open-telemetry/opentelemetry-collector-contrib/pkg/stanza v0.96.0 // indirect
194198
github.com/open-telemetry/opentelemetry-collector-contrib/pkg/translator/prometheus v0.96.0 // indirect
@@ -362,3 +366,5 @@ replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/translator
362366
replace github.com/open-telemetry/opentelemetry-collector-contrib/processor/tailsamplingprocessor => ../../processor/tailsamplingprocessor
363367

364368
replace github.com/open-telemetry/opentelemetry-collector-contrib/extension/storage => ../../extension/storage
369+
370+
replace github.com/open-telemetry/opentelemetry-collector-contrib/processor/transformprocessor => ../../processor/transformprocessor

exporter/datadogexporter/go.sum

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

exporter/datadogexporter/integrationtest/go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -277,3 +277,5 @@ replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/translator
277277
replace github.com/open-telemetry/opentelemetry-collector-contrib/processor/probabilisticsamplerprocessor => ../../../processor/probabilisticsamplerprocessor
278278

279279
replace github.com/open-telemetry/opentelemetry-collector-contrib/receiver/prometheusreceiver => ../../../receiver/prometheusreceiver
280+
281+
replace github.com/open-telemetry/opentelemetry-collector-contrib/processor/transformprocessor => ../../../processor/transformprocessor

0 commit comments

Comments
 (0)