[incubator/jaeger]Option to provide sampling strategies file (#19277)

* Option to provide sampling strategies file

Signed-off-by: Naseem <naseemkullah@gmail.com>

* Chart version

Signed-off-by: Naseem <naseemkullah@gmail.com>
This commit is contained in:
Naseem
2019-12-01 12:07:03 -08:00
committed by Kubernetes Prow Robot
parent 5f9f3c2ba2
commit cbfd6764d7
5 changed files with 65 additions and 2 deletions
+1 -1
View File
@@ -2,7 +2,7 @@ apiVersion: v1
appVersion: 1.15.1
description: A Jaeger Helm chart for Kubernetes
name: jaeger
version: 0.14.0
version: 0.15.0
keywords:
- jaeger
- opentracing
+1
View File
@@ -222,6 +222,7 @@ The following table lists the configurable parameters of the Jaeger chart and th
| `collector.service.type` | Service type | `ClusterIP` |
| `collector.service.zipkinPort` | Zipkin port for JSON/thrift HTTP | `9411` |
| `collector.extraConfigmapMounts` | Additional collector configMap mounts | `[]` |
| `collector.samplingConfig` | [Sampling strategies json file](https://www.jaegertracing.io/docs/latest/sampling/#collector-sampling-configuration) | `nil` |
| `elasticsearch.rbac.create` | To enable RBAC | `false` |
| `fullnameOverride` | Override full name | `nil` |
| `hotrod.enabled` | Enables the Hotrod demo app | `false` |
@@ -0,0 +1,16 @@
{{- if .Values.collector.samplingConfig }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "jaeger.fullname" . }}-sampling-strategies
labels:
app.kubernetes.io/name: {{ include "jaeger.name" . }}
helm.sh/chart: {{ include "jaeger.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
app.kubernetes.io/component: collector
data:
strategies.json: |-
{{ tpl .Values.collector.samplingConfig . | indent 4 }}
{{- end }}
@@ -24,8 +24,9 @@ spec:
type: Recreate
template:
metadata:
{{- if .Values.collector.podAnnotations }}
annotations:
checksum/config-env: {{ include (print $.Template.BasePath "/collector-configmap.yaml") . | sha256sum }}
{{- if .Values.collector.podAnnotations }}
{{ toYaml .Values.collector.podAnnotations | indent 8 }}
{{- end }}
labels:
@@ -82,6 +83,10 @@ spec:
- name: ES_USERNAME
value: {{ .Values.storage.elasticsearch.user }}
{{- end }}
{{- if .Values.collector.samplingConfig}}
- name: SAMPLING_STRATEGIES_FILE
value: /etc/conf/strategies.json
{{- end }}
ports:
- containerPort: {{ .Values.collector.service.grpcPort }}
name: grpc
@@ -115,6 +120,10 @@ spec:
subPath: {{ .subPath }}
readOnly: {{ .readOnly }}
{{- end }}
{{- if .Values.collector.samplingConfig}}
- name: strategies
mountPath: /etc/conf/
{{- end }}
dnsPolicy: {{ .Values.collector.dnsPolicy }}
restartPolicy: Always
volumes:
@@ -123,4 +132,10 @@ spec:
configMap:
name: {{ .configMap }}
{{- end }}
{{- if .Values.collector.samplingConfig}}
- name: strategies
configMap:
name: {{ include "jaeger.fullname" . }}-sampling-strategies
{{- end }}
{{- end -}}
+31
View File
@@ -184,6 +184,37 @@ collector:
# subPath: ""
# configMap: jaeger-tls
# readOnly: true
# samplingConfig: |-
# {
# "service_strategies": [
# {
# "service": "foo",
# "type": "probabilistic",
# "param": 0.8,
# "operation_strategies": [
# {
# "operation": "op1",
# "type": "probabilistic",
# "param": 0.2
# },
# {
# "operation": "op2",
# "type": "probabilistic",
# "param": 0.4
# }
# ]
# },
# {
# "service": "bar",
# "type": "ratelimiting",
# "param": 5
# }
# ],
# "default_strategy": {
# "type": "probabilistic",
# "param": 1
# }
# }
query:
enabled: true