File tree Expand file tree Collapse file tree 4 files changed +33
-45
lines changed
config/charts/inferencepool Expand file tree Collapse file tree 4 files changed +33
-45
lines changed Original file line number Diff line number Diff line change @@ -31,22 +31,3 @@ Selector labels
3131{ {- define " gateway-api-inference-extension.selectorLabels" -} }
3232inferencepool: { { include " gateway-api-inference-extension.name" . } }
3333{ {- end -} }
34-
35-
36- { {/*
37- Generate environment variable list for inference extension
38- Exclude OTEL_ prefixed environment variables when tracing is not enabled
39- */} }
40- { {- define " inferenceExtension.envs" -} }
41- { {- range .Values.inferenceExtension.env } }
42- { {- if and (not $.Values.inferenceExtension.trace.enabled) (hasPrefix " OTEL_" .name) } }
43- { {- else } }
44- - name: { { .name } }
45- { {- if .value } }
46- value: "{ { .value } }"
47- { {- else if .valueFrom } }
48- valueFrom: { { .valueFrom | toYaml | nindent 4 } }
49- { {- end } }
50- { {- end } }
51- { {- end } }
52- { {- end -} }
Original file line number Diff line number Diff line change @@ -107,7 +107,31 @@ spec:
107107 valueFrom :
108108 fieldRef :
109109 fieldPath : metadata.namespace
110- {{- include "inferenceExtension.envs" . | nindent 8 }}
110+ {{- if .Values.inferenceExtension.trace.enabled }}
111+ - name : OTEL_EXPORTER_OTLP_ENDPOINT
112+ value : {{ .Values.inferenceExtension.trace.otelExporterEndpoint | default "http://localhost:4317" | quote }}
113+ - name : OTEL_SERVICE_NAME
114+ value : " gateway-api-inference-extension"
115+ - name : OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
116+ valueFrom :
117+ fieldRef :
118+ apiVersion : v1
119+ fieldPath : spec.nodeName
120+ - name : OTEL_RESOURCE_ATTRIBUTES_POD_NAME
121+ valueFrom :
122+ fieldRef :
123+ apiVersion : v1
124+ fieldPath : metadata.name
125+ - name : OTEL_RESOURCE_ATTRIBUTES
126+ value : ' k8s.namespace.name=$(NAMESPACE),k8s.node.name=$(OTEL_RESOURCE_ATTRIBUTES_NODE_NAME),k8s.pod.name=$(OTEL_RESOURCE_ATTRIBUTES_POD_NAME)'
127+ - name : OTEL_TRACES_SAMPLER
128+ value : {{ .Values.inferenceExtension.trace.sampling.sampler | default "parentbased_traceidratio" | quote }}
129+ - name : OTEL_TRACES_SAMPLER_ARG
130+ value : {{ .Values.inferenceExtension.trace.sampling.samplerArg | default "0.1" | quote }}
131+ {{- end }}
132+ {{- if .Values.inferenceExtension.env }}
133+ {{- toYaml .Values.inferenceExtension.env | nindent 8 }}
134+ {{- end }}
111135 volumeMounts :
112136 - name : plugins-config-volume
113137 mountPath : " /config"
Original file line number Diff line number Diff line change @@ -6,29 +6,7 @@ inferenceExtension:
66 tag : main
77 pullPolicy : Always
88 extProcPort : 9002
9- env :
10- # The default OTEL_* environments is used to config the behaviour of OTel SDK
11- # If you also enabled trace.autoENVInject setting, the auto env inject will be skipped by opentelemetry-operator,
12- - name : OTEL_EXPORTER_OTLP_ENDPOINT
13- value : " http://localhost:4317"
14- - name : OTEL_SERVICE_NAME
15- value : " gateway-api-inference-extension"
16- - name : OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
17- valueFrom :
18- fieldRef :
19- apiVersion : v1
20- fieldPath : spec.nodeName
21- - name : OTEL_RESOURCE_ATTRIBUTES_POD_NAME
22- valueFrom :
23- fieldRef :
24- apiVersion : v1
25- fieldPath : metadata.name
26- - name : OTEL_RESOURCE_ATTRIBUTES
27- value : ' k8s.namespace.name=$(NAMESPACE),k8s.node.name=$(OTEL_RESOURCE_ATTRIBUTES_NODE_NAME),k8s.pod.name=$(OTEL_RESOURCE_ATTRIBUTES_POD_NAME)'
28- - name : OTEL_TRACES_SAMPLER
29- value : " parentbased_traceidratio"
30- - name : OTEL_TRACES_SAMPLER_ARG
31- value : " 0.1"
9+ env : []
3210 pluginsConfigFile : " default-plugins.yaml"
3311 # Define additional container ports
3412 extraContainerPorts : []
@@ -77,6 +55,10 @@ inferenceExtension:
7755 enabled : false
7856 trace :
7957 enabled : false
58+ otelExporterEndpoint : " http://localhost:4317"
59+ sampling :
60+ sampler : " parentbased_traceidratio"
61+ samplerArg : " 0.1"
8062
8163inferencePool :
8264 targetPorts :
Original file line number Diff line number Diff line change @@ -31,13 +31,13 @@ func InitTracing(ctx context.Context, logger logr.Logger) error {
3131 logger = logger .WithName ("trace" )
3232 loggerWrap := & errorHandler {logger : logger }
3333
34- serviceName , ok := os .LookupEnv ("OTEL_SERVICE_NAME" )
34+ serviceName , ok := os .LookupEnv ("OTEL_SERVICE_NAME" ) //nolint:ineffassign
3535 if ! ok {
3636 serviceName = "gateway-api-inference-extension"
3737 os .Setenv ("OTEL_SERVICE_NAME" , serviceName )
3838 }
3939
40- collectorAddr , ok := os .LookupEnv ("OTEL_EXPORTER_OTLP_ENDPOINT" )
40+ collectorAddr , ok := os .LookupEnv ("OTEL_EXPORTER_OTLP_ENDPOINT" ) //nolint:ineffassign
4141 if ! ok {
4242 collectorAddr = "http://localhost:4317"
4343 os .Setenv ("OTEL_EXPORTER_OTLP_ENDPOINT" , collectorAddr )
@@ -65,6 +65,7 @@ func InitTracing(ctx context.Context, logger logr.Logger) error {
6565 if err != nil {
6666 fraction = 0.1
6767 }
68+
6869 sampler = sdktrace .ParentBased (sdktrace .TraceIDRatioBased (fraction ))
6970 } else {
7071 loggerWrap .Handle (fmt .Errorf ("un supported sampler type: %s, fallback to parentbased_traceidratio with 0.1 Ratio" , samplerType ))
You can’t perform that action at this time.
0 commit comments