Skip to content

Commit a698cbb

Browse files
committed
Upgrade OTel collector to v0.118.0 and re-enable metrics pipeline
The clickhouseexporter v0.117.0 had a nil pointer dereference in gauge_metrics.go when processing metrics without service.name attribute. Fixed in opentelemetry-collector-contrib#37034, shipped in v0.118.0. - Bump all OTel components from v0.117.0 to v0.118.0 - Re-enable metrics pipeline with k8s_cluster receiver → clickhouse - Set create_schema: true so the exporter creates otel_metrics table Made-with: Cursor
1 parent 330084b commit a698cbb

4 files changed

Lines changed: 19 additions & 18 deletions

File tree

otel-collector-custom/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ RUN apk add --no-cache ca-certificates git
44

55
# Install OCB (OpenTelemetry Collector Builder)
66
RUN --mount=type=cache,target=/root/.cache/go-build \
7-
go install go.opentelemetry.io/collector/cmd/builder@v0.117.0
7+
go install go.opentelemetry.io/collector/cmd/builder@v0.118.0
88

99
WORKDIR /build
1010
COPY builder-config.yaml .

otel-collector-custom/builder-config.yaml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,23 @@ dist:
55

66
receivers:
77
# K8s events (watch mode) and cluster metrics
8-
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/k8sobjectsreceiver v0.117.0
9-
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/k8sclusterreceiver v0.117.0
8+
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/k8sobjectsreceiver v0.118.0
9+
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/k8sclusterreceiver v0.118.0
1010

1111
processors:
1212
# Core processors
13-
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.117.0
14-
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.117.0
13+
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.118.0
14+
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.118.0
1515
# Contrib processors
16-
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/processor/k8sattributesprocessor v0.117.0
17-
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourceprocessor v0.117.0
16+
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/processor/k8sattributesprocessor v0.118.0
17+
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourceprocessor v0.118.0
1818
# Custom: resolves krateo.io/composition-id from involvedObject labels
1919
- gomod: github.com/braghettos/observability-stack/otel-collector-custom/compositionresolver v0.0.1
2020
path: ./compositionresolver
2121

2222
exporters:
23-
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/exporter/clickhouseexporter v0.117.0
24-
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.117.0
23+
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/exporter/clickhouseexporter v0.118.0
24+
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.118.0
2525

2626
extensions:
27-
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/extension/healthcheckextension v0.117.0
27+
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/extension/healthcheckextension v0.118.0

otel-collector-custom/compositionresolver/go.mod

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@ module github.com/braghettos/observability-stack/otel-collector-custom/compositi
33
go 1.23.0
44

55
require (
6-
go.opentelemetry.io/collector/component v0.117.0
7-
go.opentelemetry.io/collector/consumer v1.23.0
8-
go.opentelemetry.io/collector/pdata v1.23.0
9-
go.opentelemetry.io/collector/processor v0.117.0
6+
go.opentelemetry.io/collector/component v0.118.0
7+
go.opentelemetry.io/collector/consumer v1.24.0
8+
go.opentelemetry.io/collector/pdata v1.24.0
9+
go.opentelemetry.io/collector/processor v0.118.0
1010
go.uber.org/zap v1.27.0
1111
k8s.io/apimachinery v0.32.0
1212
k8s.io/client-go v0.32.0

otel-collectors/deployment.yaml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ config:
129129
logs_table_name: otel_logs
130130
traces_table_name: otel_traces
131131
metrics_table_name: otel_metrics
132-
create_schema: false
132+
create_schema: true
133133
timeout: 10s
134134
retry_on_failure:
135135
enabled: true
@@ -143,9 +143,10 @@ config:
143143
receivers: [k8sobjects]
144144
processors: [memory_limiter, k8sattributes, resource, compositionresolver, batch]
145145
exporters: [clickhouse]
146-
# Metrics pipeline disabled — clickhouseexporter v0.117.0 panics on
147-
# gauge metrics with nil attribute values (SIGSEGV in gauge_metrics.go).
148-
metrics: null
146+
metrics:
147+
receivers: [k8s_cluster]
148+
processors: [memory_limiter, batch]
149+
exporters: [clickhouse]
149150
traces: null
150151

151152
resources:

0 commit comments

Comments
 (0)