From 57b10f56933ebe8e48a9cd369978841eda6bb9e6 Mon Sep 17 00:00:00 2001 From: Aditya Purandare Date: Thu, 1 Oct 2020 14:42:22 -0700 Subject: [PATCH] Add datadog environment as a configuration option (cherry picked from commit 4306558baa595606cd6befff08c8c815d6fe2bd4) --- docs/user-guide/nginx-configuration/configmap.md | 9 +++++++-- docs/user-guide/third-party-addons/opentracing.md | 3 +++ internal/ingress/controller/config/config.go | 5 +++++ internal/ingress/controller/nginx.go | 1 + 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/docs/user-guide/nginx-configuration/configmap.md b/docs/user-guide/nginx-configuration/configmap.md index 4dadd56bb..0005490be 100755 --- a/docs/user-guide/nginx-configuration/configmap.md +++ b/docs/user-guide/nginx-configuration/configmap.md @@ -140,8 +140,9 @@ The following table shows a configuration option's name, type, and the default v |[jaeger-trace-baggage-header-prefix](#jaeger-trace-baggage-header-prefix)|string|uberctx-| |[datadog-collector-host](#datadog-collector-host)|string|""| |[datadog-collector-port](#datadog-collector-port)|int|8126| -|[datadog-service-name](#datadog-service-name)|service|"nginx"| -|[datadog-operation-name-override](#datadog-operation-name-override)|service|"nginx.handle"| +|[datadog-service-name](#datadog-service-name)|string|"nginx"| +|[datadog-environment](#datadog-environment)|string|"prod"| +|[datadog-operation-name-override](#datadog-operation-name-override)|string|"nginx.handle"| |[datadog-priority-sampling](#datadog-priority-sampling)|bool|"true"| |[datadog-sample-rate](#datadog-sample-rate)|float|1.0| |[main-snippet](#main-snippet)|string|""| @@ -861,6 +862,10 @@ Specifies the port to use when uploading traces. _**default:**_ 8126 Specifies the service name to use for any traces created. _**default:**_ nginx +## datadog-environment + +Specifies the environment this trace belongs to. _**default:**_ prod + ## datadog-operation-name-override Overrides the operation naem to use for any traces crated. _**default:**_ nginx.handle diff --git a/docs/user-guide/third-party-addons/opentracing.md b/docs/user-guide/third-party-addons/opentracing.md index 0d8ed3bf3..5fb08f432 100644 --- a/docs/user-guide/third-party-addons/opentracing.md +++ b/docs/user-guide/third-party-addons/opentracing.md @@ -92,6 +92,9 @@ datadog-collector-port # specifies the service name to use for any traces created, Default: nginx datadog-service-name +# specifies the environment this trace belongs to, Default: prod +datadog-environment + # specifies the operation name to use for any traces collected, Default: nginx.handle datadog-operation-name-override diff --git a/internal/ingress/controller/config/config.go b/internal/ingress/controller/config/config.go index ae07cf558..a62ae2b8c 100644 --- a/internal/ingress/controller/config/config.go +++ b/internal/ingress/controller/config/config.go @@ -584,6 +584,10 @@ type Configuration struct { // Default: 8126 DatadogCollectorPort int `json:"datadog-collector-port"` + // DatadogEnvironment specifies the environment this trace belongs to. + // Default: prod + DatadogEnvironment string `json:"datadog-environment"` + // DatadogServiceName specifies the service name to use for any traces created // Default: nginx DatadogServiceName string `json:"datadog-service-name"` @@ -823,6 +827,7 @@ func NewDefault() Configuration { JaegerSamplerPort: 5778, JaegerSamplerHost: "http://127.0.0.1", DatadogServiceName: "nginx", + DatadogEnvironment: "prod", DatadogCollectorPort: 8126, DatadogOperationNameOverride: "nginx.handle", DatadogSampleRate: 1.0, diff --git a/internal/ingress/controller/nginx.go b/internal/ingress/controller/nginx.go index acc745c06..9a2a7be90 100644 --- a/internal/ingress/controller/nginx.go +++ b/internal/ingress/controller/nginx.go @@ -1046,6 +1046,7 @@ const datadogTmpl = `{ "service": "{{ .DatadogServiceName }}", "agent_host": "{{ .DatadogCollectorHost }}", "agent_port": {{ .DatadogCollectorPort }}, + "environment": "{{ .DatadogEnvironment }}", "operation_name_override": "{{ .DatadogOperationNameOverride }}", "sample_rate": {{ .DatadogSampleRate }}, "dd.priority.sampling": {{ .DatadogPrioritySampling }}