Skip to content

Commit a837b95

Browse files
Merge pull request #110 from ma-hill/HYPERFLEET-986
HYPERFLEET-986 - feat: Add OTEL env vars to deployment.yaml
2 parents 4c6179f + 985642e commit a837b95

5 files changed

Lines changed: 119 additions & 66 deletions

File tree

charts/templates/deployment.yaml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,30 @@ spec:
8585
# Config file from ConfigMap (generated from values)
8686
- name: HYPERFLEET_CONFIG
8787
value: /etc/hyperfleet/config.yaml
88+
{{- with .Values.tracing }}
89+
- name: HYPERFLEET_TRACING_ENABLED
90+
value: {{ .enabled | quote }}
91+
{{- if .enabled }}
92+
- name: OTEL_SERVICE_NAME
93+
value: {{ .serviceName | quote }}
94+
- name: OTEL_EXPORTER_OTLP_ENDPOINT
95+
value: {{ .otlpEndpoint | quote }}
96+
- name: OTEL_EXPORTER_OTLP_PROTOCOL
97+
value: {{ .otlpProtocol | quote }}
98+
- name: OTEL_TRACES_SAMPLER
99+
value: {{ .sampler | quote }}
100+
- name: OTEL_TRACES_SAMPLER_ARG
101+
value: {{ .samplerArg | quote }}
102+
- name: OTEL_PROPAGATORS
103+
value: {{ .propagators | quote }}
104+
- name: K8S_NAMESPACE
105+
valueFrom:
106+
fieldRef:
107+
fieldPath: metadata.namespace
108+
- name: OTEL_RESOURCE_ATTRIBUTES
109+
value: "k8s.namespace.name=$(K8S_NAMESPACE)"
110+
{{- end }}
111+
{{- end }}
88112

89113
# Database credentials from Secret (using secretKeyRef)
90114
{{- include "hyperfleet-api.databaseEnvVars" . | nindent 8 }}

charts/values.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,18 @@ serviceMonitor:
271271
labels: {}
272272
namespace: ""
273273

274+
tracing:
275+
enabled: true
276+
serviceName: "hyperfleet-api"
277+
# OTLP exporter endpoint (traces go to stdout if not set)
278+
otlpEndpoint: ""
279+
# OTLP protocol: grpc (default) or http/protobuf
280+
otlpProtocol: "grpc"
281+
# Sampler type (default per tracing standard)
282+
sampler: "parentbased_traceidratio"
283+
# Sampling rate: 1.0 for dev, 0.01 for production
284+
samplerArg: "1.0"
285+
propagators: "tracecontext,baggage"
274286
# ============================================================
275287
# Advanced Overrides (Escape Hatch)
276288
# ============================================================

go.mod

Lines changed: 25 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -29,19 +29,27 @@ require (
2929
github.com/testcontainers/testcontainers-go/modules/postgres v0.42.0
3030
github.com/yaacov/tree-search-language v0.0.0-20190923184055-1c2dad2e354b
3131
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0
32-
go.opentelemetry.io/otel v1.42.0
33-
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.42.0
34-
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.42.0
35-
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.42.0
36-
go.opentelemetry.io/otel/sdk v1.42.0
37-
go.opentelemetry.io/otel/trace v1.42.0
32+
go.opentelemetry.io/otel v1.43.0
33+
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.43.0
34+
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.43.0
35+
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.43.0
36+
go.opentelemetry.io/otel/sdk v1.43.0
37+
go.opentelemetry.io/otel/trace v1.43.0
3838
go.uber.org/mock v0.6.0
3939
gopkg.in/resty.v1 v1.12.0
4040
gorm.io/datatypes v1.2.7
4141
gorm.io/driver/postgres v1.6.0
4242
gorm.io/gorm v1.30.0
4343
)
4444

45+
require (
46+
go.opentelemetry.io/contrib/propagators/aws v1.43.0 // indirect
47+
go.opentelemetry.io/contrib/propagators/b3 v1.43.0 // indirect
48+
go.opentelemetry.io/contrib/propagators/jaeger v1.43.0 // indirect
49+
go.opentelemetry.io/contrib/propagators/ot v1.43.0 // indirect
50+
go.uber.org/multierr v1.11.0 // indirect
51+
)
52+
4553
require (
4654
dario.cat/mergo v1.0.2 // indirect
4755
filippo.io/edwards25519 v1.1.0 // indirect
@@ -132,18 +140,19 @@ require (
132140
github.com/woodsbury/decimal128 v1.3.0 // indirect
133141
github.com/yusufpapurcu/wmi v1.2.4 // indirect
134142
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
135-
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.42.0 // indirect
136-
go.opentelemetry.io/otel/metric v1.42.0 // indirect
137-
go.opentelemetry.io/proto/otlp v1.9.0 // indirect
143+
go.opentelemetry.io/contrib/propagators/autoprop v0.68.0
144+
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.43.0 // indirect
145+
go.opentelemetry.io/otel/metric v1.43.0 // indirect
146+
go.opentelemetry.io/proto/otlp v1.10.0 // indirect
138147
go.yaml.in/yaml/v3 v3.0.4 // indirect
139-
golang.org/x/crypto v0.48.0 // indirect
140-
golang.org/x/net v0.51.0 // indirect
141-
golang.org/x/sync v0.19.0 // indirect
148+
golang.org/x/crypto v0.49.0 // indirect
149+
golang.org/x/net v0.52.0 // indirect
150+
golang.org/x/sync v0.20.0 // indirect
142151
golang.org/x/sys v0.42.0 // indirect
143-
golang.org/x/text v0.34.0 // indirect
144-
google.golang.org/genproto/googleapis/api v0.0.0-20260209200024-4cfbd4190f57 // indirect
145-
google.golang.org/genproto/googleapis/rpc v0.0.0-20260209200024-4cfbd4190f57 // indirect
146-
google.golang.org/grpc v1.79.3 // indirect
152+
golang.org/x/text v0.35.0 // indirect
153+
google.golang.org/genproto/googleapis/api v0.0.0-20260401024825-9d38bb4040a9 // indirect
154+
google.golang.org/genproto/googleapis/rpc v0.0.0-20260401024825-9d38bb4040a9 // indirect
155+
google.golang.org/grpc v1.80.0 // indirect
147156
google.golang.org/protobuf v1.36.11 // indirect
148157
gopkg.in/yaml.v3 v3.0.1 // indirect
149158
gorm.io/driver/mysql v1.5.6 // indirect

0 commit comments

Comments
 (0)