OTEL Collector
Source:: https://opentelemetry.io/docs/collector/
OpenTelemetry Collector β ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π² ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ΅ OpenTelemetry, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ±ΠΎΡΠ°, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠ΅Π»Π΅ΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ (ΠΌΠ΅ΡΡΠΈΠΊ, Π»ΠΎΠ³ΠΎΠ² ΠΈ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΎΠΊ) ΠΈΠ· ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°.
ΠΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ΄Π° Π°Π³Π΅Π½Ρ ΡΡΠ΄ΠΎΠΌ Ρ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² Π²ΠΈΠ΄Π΅ sidecar ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° K8S) ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡΠΈΠΉ Π‘ΠΈΠ³Π½Π°Π»Ρ ΠΠ°Π±Π»ΡΠ΄Π°Π΅ΠΌΠΎΡΡΠΈ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π°Π³Π΅Π½ΡΠΎΠ² ΠΈ/ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Π½Π°ΠΏΡΡΠΌΡΡ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
Π ΡΠ΅Π»ΠΎΠΌ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΎΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ· ΡΠ΅Π±Ρ ΠΎΠ±ΡΡΠ½ΡΠΉ Π±ΠΈΠ½Π°ΡΠΈΠ½ΠΊ Π½Π° Go ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π²ΡΡΠ΅ΠΊΠ°ΡΡΠΈΠΌΠΈ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌΠΈ.
Π Github ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄Π²Π° ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²ΠΈΠ΄Π° ΡΠ±ΠΎΡΠΊΠΈ. ΠΡΠΎΡΡΠΎ collector ΠΈ Π΅Π³ΠΎ contrib Π²Π΅ΡΡΠΈΡ Π²ΠΊΠ»ΡΡΠ°ΡΡΠ°Ρ Π² ΡΠ΅Π±Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π΄Π»Ρ ΠΏΡΠΈΡΠΌ, ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΈΠ³Π½Π°Π»ΠΎΠ².
ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅
ΠΠ°ΠΆΠ΅
core
ΡΠ±ΠΎΡΠΊΠ° ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΡΠ΄ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈΠ· Π΅Π³ΠΎcontib
Π²Π΅ΡΡΠΈΠΈ. Π§ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΡΠ°Π½ΠΈΡΠ΅ Π² ΠΏΠΎΠΈΡΠΊΠ΅ ΠΏΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
ΠΡΠΈΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈ Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΎΡΠ°: ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΡΠ΅Π½Π΄ OpenTelemetry
OCB
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Quote
Β« Π₯ΠΎΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Docker ΠΈΠ»ΠΈ Π·Π°ΡΠ°Π½Π΅Π΅ ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΠΎΠ±ΡΠ°Π· Collector, Π² ΡΠ°Π±ΠΎΡΠΈΡ ΡΡΠ΅Π΄Π°Ρ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Collector Builder (https://oreil.ly/UOy49). ΠΡΠ° ΡΠ»ΡΠΆΠ΅Π±Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΠ±ΠΎΡΠΊΡ ΡΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»ΡΠΌΠΈ, ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠ°ΠΌΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ. Β» (Page 163)
OpenTelemetry Π² K8S
Π’Π°ΠΊ ΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΊΠ°ΠΊ Operator Π² Kubernetes.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ
Π‘ΡΡΡΠΊΡΡΡΠ° Π»ΡΠ±ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Collector ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠ΅ΡΡΡΠ΅Ρ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ ΡΠ΅Π»Π΅ΠΌΠ΅ΡΡΠΈΠΈ:
ΠΡΠ΅ ΡΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ Π² Services. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ½Ρ Extension ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊ Π΄Π°Π½Π½ΡΠΌ ΡΠ΅Π»Π΅ΠΌΠ΅ΡΡΠΈΠΈ, Π° ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ°ΠΌΠΎΠΌΡ Collector.
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³Π°:
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
otlp/2:
protocols:
grpc:
endpoint: 0.0.0.0:55690
processors:
batch:
batch/test:
exporters:
otlp:
endpoint: otelcol:4317
otlp/2:
endpoint: otelcol2:4317
extensions:
health_check:
pprof:
zpages:
service:
extensions: [health_check, pprof, zpages]
pipelines:
traces:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
traces/2:
receivers: [otlp/2]
processors: [batch/test]
exporters: [otlp/2]
metrics:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
logs:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
ΠΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΡΠ΅ΡΠ΅Π· type[/name]
.
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ
- Jaeger - Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 2 ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΎΡΠΎΠΌ. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΅Π³ΠΎ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π°Π·Ρ.
- Grafana Alloy - Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ Grafana Labs.