Deprecate opentracing (#10615)
This commit is contained in:
parent
9ed0d7f7af
commit
30820a5acc
14 changed files with 4 additions and 1089 deletions
|
|
@ -676,11 +676,6 @@ func (n *NGINXController) OnUpdate(ingressCfg ingress.Configuration) error {
|
|||
return err
|
||||
}
|
||||
|
||||
err = createOpentracingCfg(&cfg)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err = createOpentelemetryCfg(&cfg)
|
||||
if err != nil {
|
||||
return err
|
||||
|
|
@ -1001,33 +996,6 @@ func configureCertificates(rawServers []*ingress.Server) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
const zipkinTmpl = `{
|
||||
"service_name": "{{ .ZipkinServiceName }}",
|
||||
"collector_host": "{{ .ZipkinCollectorHost }}",
|
||||
"collector_port": {{ .ZipkinCollectorPort }},
|
||||
"sample_rate": {{ .ZipkinSampleRate }}
|
||||
}`
|
||||
|
||||
const jaegerTmpl = `{
|
||||
"service_name": "{{ .JaegerServiceName }}",
|
||||
"propagation_format": "{{ .JaegerPropagationFormat }}",
|
||||
"sampler": {
|
||||
"type": "{{ .JaegerSamplerType }}",
|
||||
"param": {{ .JaegerSamplerParam }},
|
||||
"samplingServerURL": "{{ .JaegerSamplerHost }}:{{ .JaegerSamplerPort }}/sampling"
|
||||
},
|
||||
"reporter": {
|
||||
"endpoint": "{{ .JaegerEndpoint }}",
|
||||
"localAgentHostPort": "{{ .JaegerCollectorHost }}:{{ .JaegerCollectorPort }}"
|
||||
},
|
||||
"headers": {
|
||||
"TraceContextHeaderName": "{{ .JaegerTraceContextHeaderName }}",
|
||||
"jaegerDebugHeader": "{{ .JaegerDebugHeader }}",
|
||||
"jaegerBaggageHeader": "{{ .JaegerBaggageHeader }}",
|
||||
"traceBaggageHeaderPrefix": "{{ .JaegerTraceBaggageHeaderPrefix }}"
|
||||
}
|
||||
}`
|
||||
|
||||
const otelTmpl = `
|
||||
exporter = "otlp"
|
||||
processor = "batch"
|
||||
|
|
@ -1051,70 +1019,6 @@ ratio = {{ .OtelSamplerRatio }}
|
|||
parent_based = {{ .OtelSamplerParentBased }}
|
||||
`
|
||||
|
||||
func datadogOpentracingCfg(cfg *ngx_config.Configuration) (string, error) {
|
||||
m := map[string]interface{}{
|
||||
"service": cfg.DatadogServiceName,
|
||||
"agent_host": cfg.DatadogCollectorHost,
|
||||
"agent_port": cfg.DatadogCollectorPort,
|
||||
"environment": cfg.DatadogEnvironment,
|
||||
"operation_name_override": cfg.DatadogOperationNameOverride,
|
||||
}
|
||||
|
||||
// Omit "sample_rate" if the configuration's sample rate is unset (nil).
|
||||
// Omitting "sample_rate" from the plugin JSON indicates to the tracer that
|
||||
// it should use dynamic rates instead of a configured rate.
|
||||
if cfg.DatadogSampleRate != nil {
|
||||
m["sample_rate"] = *cfg.DatadogSampleRate
|
||||
}
|
||||
|
||||
buf, err := json.Marshal(m)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
return string(buf), nil
|
||||
}
|
||||
|
||||
func opentracingCfgFromTemplate(cfg *ngx_config.Configuration, tmplName, tmplText string) (string, error) {
|
||||
tmpl, err := template.New(tmplName).Parse(tmplText)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
tmplBuf := bytes.NewBuffer(make([]byte, 0))
|
||||
err = tmpl.Execute(tmplBuf, cfg)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
return tmplBuf.String(), nil
|
||||
}
|
||||
|
||||
func createOpentracingCfg(cfg *ngx_config.Configuration) error {
|
||||
var configData string
|
||||
var err error
|
||||
|
||||
switch {
|
||||
case cfg.ZipkinCollectorHost != "":
|
||||
configData, err = opentracingCfgFromTemplate(cfg, "zipkin", zipkinTmpl)
|
||||
case cfg.JaegerCollectorHost != "" || cfg.JaegerEndpoint != "":
|
||||
configData, err = opentracingCfgFromTemplate(cfg, "jaeger", jaegerTmpl)
|
||||
case cfg.DatadogCollectorHost != "":
|
||||
configData, err = datadogOpentracingCfg(cfg)
|
||||
default:
|
||||
configData = "{}"
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// Expand possible environment variables before writing the configuration to file.
|
||||
expanded := os.ExpandEnv(configData)
|
||||
|
||||
return os.WriteFile("/etc/ingress-controller/telemetry/opentracing.json", []byte(expanded), file.ReadWriteByUser)
|
||||
}
|
||||
|
||||
func createOpentelemetryCfg(cfg *ngx_config.Configuration) error {
|
||||
tmpl, err := template.New("otel").Parse(otelTmpl)
|
||||
if err != nil {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue