Skip to content

Commit c59454d

Browse files
clayton-cornellgrafanabot
authored andcommitted
Refactor topic to fix errors (#4909)
(cherry picked from commit af1c3df)
1 parent b5f4739 commit c59454d

File tree

1 file changed

+25
-15
lines changed

1 file changed

+25
-15
lines changed

docs/sources/collect/opentelemetry-to-lgtm-stack.md

Lines changed: 25 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,10 @@ This topic describes how to:
2424
* [`otelcol.auth.basic`][otelcol.auth.basic]
2525
* [`otelcol.exporter.loki`][otelcol.exporter.loki]
2626
* [`otelcol.exporter.otlp`][otelcol.exporter.otlp]
27+
* [`otelcol.exporter.otlphttp`][otelcol.exporter.otlphttp]
2728
* [`otelcol.exporter.prometheus`][otelcol.exporter.prometheus]
2829
* [`otelcol.processor.batch`][otelcol.processor.batch]
30+
* [`otelcol.processor.memory_limiter`][otelcol.processor.memory_limiter]
2931
* [`otelcol.receiver.otlp`][otelcol.receiver.otlp]
3032
* [`prometheus.remote_write`][prometheus.remote_write]
3133

@@ -76,7 +78,7 @@ otelcol.exporter.otlp "default" {
7678
The pipeline looks like this:
7779

7880
```plaintext
79-
Metrics, Logs, Traces: OTLP Receiver → batch processor → OTLP Exporter
81+
Metrics, Logs, Traces: OTLP Receiver → Batch Processor → OTLP HTTP Exporter
8082
```
8183

8284
## Grafana Cloud
@@ -109,14 +111,19 @@ Replace the following:
109111

110112
This configuration uses the credentials stored in `otelcol.auth.basic "default"` to authenticate against the Grafana Cloud OTLP endpoints, and you should start to see your data arrive.
111113

112-
## Other platforms (Grafana Enterprise, Grafana Open Source)
114+
{{< admonition type="note" >}}
115+
For Grafana Cloud, use `otelcol.exporter.otlphttp` which sends data over HTTP/HTTPS.
116+
Use `otelcol.exporter.otlp` for gRPC endpoints when working with other platforms.
117+
{{< /admonition >}}
118+
119+
## Other platforms: Grafana Enterprise and Grafana Open Source
113120

114121
You can implement the following pipelines to send your data to Loki, Tempo, and Mimir or Prometheus.
115122

116123
```plaintext
117-
Metrics: OTel → batch processorMimir or Prometheus remote write
118-
Logs: OTel → batch processor → Loki exporter
119-
Traces: OTel → batch processorOTel exporter
124+
Metrics: OTLP Receiver → Batch ProcessorPrometheus Exporter → Prometheus Remote Write
125+
Logs: OTLP Receiver → Batch Processor → Loki Exporter → Loki Write
126+
Traces: OTLP Receiver → Batch ProcessorOTLP Exporter (gRPC/HTTP)
120127
```
121128

122129
### Grafana Loki
@@ -136,7 +143,7 @@ loki.write "default" {
136143
}
137144
```
138145

139-
To use Loki with basic-auth, which is required with Grafana Cloud Logs, you must configure the [`loki.write`][loki.write] component.
146+
To use Loki with basic-auth, which Grafana Cloud Logs requires, you must configure the [`loki.write`][loki.write] component.
140147
You can get the Loki configuration from the Loki **Details** page in the [Grafana Cloud Portal][].
141148

142149
```alloy
@@ -158,7 +165,7 @@ loki.write "grafana_cloud_logs" {
158165

159166
### Grafana Tempo
160167

161-
[Grafana Tempo][] is an open source, easy-to-use, scalable distributed tracing backend.
168+
[Grafana Tempo][] is an open source, scalable distributed tracing backend.
162169
Tempo can ingest OTLP directly, and you can use the OTLP exporter to send the traces to Tempo.
163170

164171
```alloy
@@ -169,13 +176,13 @@ otelcol.exporter.otlp "default" {
169176
}
170177
```
171178

172-
To use Tempo with basic-auth, which is required with Grafana Cloud Traces, you must use the [otelcol.auth.basic][] component.
179+
To use Tempo with basic-auth, which Grafana Cloud Traces requires, you must use the [otelcol.auth.basic][] component.
173180
You can get the Tempo configuration from the Tempo **Details** page in the [Grafana Cloud Portal][].
174181

175182
```alloy
176-
otelcol.exporter.otlp "grafana_cloud_traces" {
183+
otelcol.exporter.otlphttp "grafana_cloud_traces" {
177184
client {
178-
endpoint = "tempo-us-central1.grafana.net:443"
185+
endpoint = "https://tempo-us-central1.grafana.net:443"
179186
auth = otelcol.auth.basic.grafana_cloud_traces.handler
180187
}
181188
}
@@ -204,7 +211,7 @@ prometheus.remote_write "default" {
204211
}
205212
```
206213

207-
To use Prometheus with basic-auth, which is required with Grafana Cloud Metrics, you must configure the [`prometheus.remote_write`][prometheus.remote_write] component.
214+
To use Prometheus with basic-auth, which Grafana Cloud Metrics requires, you must configure the [`prometheus.remote_write`][prometheus.remote_write] component.
208215
You can get the Prometheus configuration from the Prometheus **Details** page in the [Grafana Cloud Portal][].
209216

210217
```alloy
@@ -227,6 +234,7 @@ prometheus.remote_write "grafana_cloud_metrics" {
227234
### Put it all together
228235

229236
Instead of referencing `otelcol.exporter.otlp.default.input` in the output of `otelcol.processor.batch`, you need to reference the three exporters you set up.
237+
For Grafana Cloud, use `otelcol.exporter.otlphttp` for traces to send data over HTTPS.
230238
The final configuration becomes:
231239

232240
```alloy
@@ -250,13 +258,13 @@ otelcol.processor.batch "example" {
250258
output {
251259
metrics = [otelcol.exporter.prometheus.grafana_cloud_metrics.input]
252260
logs = [otelcol.exporter.loki.grafana_cloud_logs.input]
253-
traces = [otelcol.exporter.otlp.grafana_cloud_traces.input]
261+
traces = [otelcol.exporter.otlphttp.grafana_cloud_traces.input]
254262
}
255263
}
256264
257-
otelcol.exporter.otlp "grafana_cloud_traces" {
265+
otelcol.exporter.otlphttp "grafana_cloud_traces" {
258266
client {
259-
endpoint = "tempo-us-central1.grafana.net:443"
267+
endpoint = "https://tempo-us-central1.grafana.net:443"
260268
auth = otelcol.auth.basic.grafana_cloud_traces.handler
261269
}
262270
}
@@ -316,7 +324,7 @@ ts=2023-05-09T09:37:15.303522Z level=info trace_id=6466516c9e1a556422df7a84c0ade
316324
ts=2023-05-09T09:37:15.303557Z level=info trace_id=6466516c9e1a556422df7a84c0ade6b0 msg="finished node evaluation" node_id=otelcol.exporter.prometheus.grafana_cloud_metrics duration=30.083µs
317325
ts=2023-05-09T09:37:15.303611Z component=prometheus.remote_write.grafana_cloud_metrics subcomponent=rw level=info remote_name=7f623a url=https://prometheus-us-central1.grafana.net/api/prom/push msg="Replaying WAL" queue=7f623a
318326
ts=2023-05-09T09:37:15.303618Z level=info trace_id=6466516c9e1a556422df7a84c0ade6b0 msg="finished node evaluation" node_id=otelcol.auth.basic.grafana_cloud_traces duration=52.5µs
319-
ts=2023-05-09T09:37:15.303694Z level=info trace_id=6466516c9e1a556422df7a84c0ade6b0 msg="finished node evaluation" node_id=otelcol.exporter.otlp.grafana_cloud_traces duration=70.375µs
327+
ts=2023-05-09T09:37:15.303694Z level=info trace_id=6466516c9e1a556422df7a84c0ade6b0 msg="finished node evaluation" node_id=otelcol.exporter.otlphttp.grafana_cloud_traces duration=70.375µs
320328
ts=2023-05-09T09:37:15.303782Z component=otelcol.processor.memory_limiter.default level=info msg="Memory limiter configured" limit_mib=150 spike_limit_mib=30 check_interval=1s
321329
ts=2023-05-09T09:37:15.303802Z level=info trace_id=6466516c9e1a556422df7a84c0ade6b0 msg="finished node evaluation" node_id=otelcol.processor.memory_limiter.default duration=100.334µs
322330
ts=2023-05-09T09:37:15.303853Z level=info trace_id=6466516c9e1a556422df7a84c0ade6b0 msg="finished node evaluation" node_id=otelcol.processor.batch.default duration=44.75µs
@@ -345,7 +353,9 @@ You can check the pipeline graphically by visiting <http://localhost:12345/graph
345353
[otelcol.auth.basic]: ../../reference/components/otelcol/otelcol.auth.basic/
346354
[otelcol.exporter.loki]: ../../reference/components/otelcol/otelcol.exporter.loki/
347355
[otelcol.exporter.otlp]: ../../reference/components/otelcol/otelcol.exporter.otlp/
356+
[otelcol.exporter.otlphttp]: ../../reference/components/otelcol/otelcol.exporter.otlphttp/
348357
[otelcol.exporter.prometheus]: ../../reference/components/otelcol/otelcol.exporter.prometheus/
349358
[otelcol.processor.batch]: ../../reference/components/otelcol/otelcol.processor.batch/
359+
[otelcol.processor.memory_limiter]: ../../reference/components/otelcol/otelcol.processor.memory_limiter/
350360
[otelcol.receiver.otlp]: ../../reference/components/otelcol/otelcol.receiver.otlp/
351361
[prometheus.remote_write]: ../../reference/components/prometheus/prometheus.remote_write/

0 commit comments

Comments
 (0)