From 952951a20ad2031b5089bddef979f01d108bf3ae Mon Sep 17 00:00:00 2001 From: GrigoriyMikhalkin Date: Sun, 31 Mar 2024 19:44:50 +0200 Subject: [PATCH] Allow to change OcCollector Service name via LINKERD2_PROXY_TRACING_SERVICE_NAME env variable Signed-off-by: GrigoriyMikhalkin --- linkerd/app/src/env.rs | 5 +++++ linkerd/app/src/oc_collector.rs | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/linkerd/app/src/env.rs b/linkerd/app/src/env.rs index 53a1a1ef95..2277bb30b2 100644 --- a/linkerd/app/src/env.rs +++ b/linkerd/app/src/env.rs @@ -249,6 +249,8 @@ const ENV_OUTBOUND_HTTP1_CONNECTION_POOL_IDLE_TIMEOUT: &str = const ENV_SHUTDOWN_GRACE_PERIOD: &str = "LINKERD2_PROXY_SHUTDOWN_GRACE_PERIOD"; +const ENV_PROXY_TRACING_SERVICE_NAME: &str = "LINKERD2_PROXY_TRACING_SERVICE_NAME"; + // Default values for various configuration fields const DEFAULT_OUTBOUND_LISTEN_ADDR: &str = "127.0.0.1:4140"; pub const DEFAULT_INBOUND_LISTEN_ADDR: &str = "0.0.0.0:4143"; @@ -367,6 +369,8 @@ pub fn parse_config(strings: &S) -> Result let shutdown_grace_period = parse(strings, ENV_SHUTDOWN_GRACE_PERIOD, parse_duration); + let proxy_tracing_service_name = strings.get(ENV_PROXY_TRACING_SERVICE_NAME); + let inbound_discovery_idle_timeout = parse(strings, ENV_INBOUND_DISCOVERY_IDLE_TIMEOUT, parse_duration); let outbound_discovery_idle_timeout = @@ -788,6 +792,7 @@ pub fn parse_config(strings: &S) -> Result oc_collector::Config::Enabled(Box::new(oc_collector::EnabledConfig { attributes, hostname: hostname?, + service_name: proxy_tracing_service_name?, control: ControlConfig { addr, connect, diff --git a/linkerd/app/src/oc_collector.rs b/linkerd/app/src/oc_collector.rs index a204206464..215c1b6c62 100644 --- a/linkerd/app/src/oc_collector.rs +++ b/linkerd/app/src/oc_collector.rs @@ -21,6 +21,7 @@ pub struct EnabledConfig { pub control: control::Config, pub attributes: HashMap, pub hostname: Option, + pub service_name: Option, } pub type Task = Pin + Send + 'static>>; @@ -72,7 +73,7 @@ impl Config { start_timestamp: Some(SystemTime::now().into()), }), service_info: Some(oc::ServiceInfo { - name: Self::SERVICE_NAME.to_string(), + name: inner.service_name.unwrap_or(Self::SERVICE_NAME.to_string()), }), attributes: inner.attributes, ..oc::Node::default()