Skip to content

Commit 184ab59

Browse files
mackjmrsongy23
authored andcommitted
Add opt out of converter instructions (#28583)
Co-authored-by: Yang Song <[email protected]>
1 parent 18aed38 commit 184ab59

File tree

4 files changed

+99
-0
lines changed

4 files changed

+99
-0
lines changed

comp/otelcol/converter/README.md

+28
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,36 @@ If it finds datadogexporters which are not defined in a pipeline with the promet
2424

2525
For any prometheus receiver collecting collector health metrics, and sending these to Datadog, it will update the job name to `datadog-agent`. This ensures the health metrics are tagged by `service:datadog-agent` and differentiable from collector health metrics.
2626

27+
### API Key and API Site
28+
29+
If `api_key` is unset, set to an empty string or set to a secret, the converter will fetch the api key from the agent configuration. It will also fetch the the site from the agent config if unset in collector.
30+
31+
### Datadog Connector
32+
33+
The converter will automatically set `datadogconnector` config `trace.span_name_as_resource_name` to true in any datadog connectors in your configuration.
34+
2735
## Provided and enhanced config
2836

2937
`GetProvidedConf` and `GetEnhancedConf` return the string representation of the user provided and autoconfigured conf respectively. Currently, these APIs have two limitations:
3038
- They do not redact sensitive data
3139
- They do not provide the effective config (including defaults...etc)
40+
41+
## Opting out of converter
42+
43+
It is possible to opt out of the converter by setting env var `DD_OTELCOLLECTOR_CONVERTER_ENABLED` or agent config `otelcollector.converter.enabled` to `false` (`true` by default). Please note that by doing so, you are removing functionality including flare collection from otel-agent, health metrics from collector, or infra level tagging on your telemetry data. If you want to opt out of some components, you can disable all and add the components that you require manually:
44+
45+
### Extensions
46+
47+
Please refer to the following example in order to manually set the `pprof`, `health_check`, `zpages` and `datadog` extensions: [extensions.yaml](examples/extensions.yaml). Please refer to the extensions README.md for additional information about the components:
48+
- [pprof](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/pprofextension/README.md): Enables collecting collector profiles at a defined endpoint.
49+
- [health_check](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/extension/healthcheckextension/README.md): Enables an HTTP url that can be probed to check the status of the OpenTelemetry Collector.
50+
- [zpages](https://github.com/open-telemetry/opentelemetry-collector/blob/main/extension/zpagesextension/README.md): Enables an extension that serves zPages, an HTTP endpoint that provides live data for debugging different components
51+
- [datadog](../extension/README.md): Enables otel-agent information to be collected in the datadog-agent flare.
52+
53+
### Prometheus Receiver
54+
55+
The Prometheus receiver scrapes prometheus endpoints. This is used to collect the collectors internal health metrics, by adding a job that scrapes the service telemetry metrics endpoint (configurable via `service::telemetry::metrics`). Please refer to the following example in order to manually set the prometheus receiver: [prometheus.yaml](examples/prometheus.yaml). Please refer to the receivers [README.md](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver/prometheusreceiver) for additional information about the component.
56+
57+
### Infra Attributes Processor
58+
59+
The infraattributes processor is used to add infra level tags collected by the datadog-agent to your telemetry data. Please refer to the following example in order to manually set the infraattributes processor: [infraattributes.yaml](examples/infraattributes.yaml). Please refer to the processors [README.md](../otlp/components/processor/infraattributesprocessor/README.md) for additional information about the component.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
receivers:
2+
otlp:
3+
4+
exporters:
5+
datadog:
6+
api:
7+
key: 12345
8+
9+
extensions:
10+
pprof/user-defined:
11+
health_check/user-defined:
12+
zpages/user-defined:
13+
endpoint: "localhost:55679"
14+
datadog/user-defined:
15+
16+
service:
17+
extensions: [pprof/user-defined, zpages/user-defined, health_check/user-defined, datadog/user-defined]
18+
pipelines:
19+
traces:
20+
receivers: [otlp]
21+
exporters: [datadog]
22+
metrics:
23+
receivers: [otlp]
24+
exporters: [datadog]
25+
logs:
26+
receivers: [otlp]
27+
exporters: [datadog]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
receivers:
2+
otlp:
3+
4+
exporters:
5+
datadog:
6+
api:
7+
key: 12345
8+
9+
processors:
10+
infraattributes/user-defined:
11+
12+
service:
13+
pipelines:
14+
traces:
15+
receivers: [otlp]
16+
processors: [infraattributes/user-defined]
17+
exporters: [datadog]
18+
metrics:
19+
receivers: [otlp]
20+
processors: [infraattributes/user-defined]
21+
exporters: [datadog]
22+
logs:
23+
receivers: [otlp]
24+
processors: [infraattributes/user-defined]
25+
exporters: [datadog]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
receivers:
2+
prometheus/user-defined:
3+
config:
4+
scrape_configs:
5+
- job_name: 'datadog-agent'
6+
scrape_interval: 10s
7+
static_configs:
8+
- targets: ['0.0.0.0:8888']
9+
10+
exporters:
11+
datadog:
12+
api:
13+
key: 12345
14+
15+
service:
16+
pipelines:
17+
metrics:
18+
receivers: [prometheus/user-defined]
19+
exporters: [datadog]

0 commit comments

Comments
 (0)