Skip to content
21 changes: 21 additions & 0 deletions .chloggen/remove_sfx_receiver_gateway.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
change_type: breaking

# The name of the component, or a single word describing the area of concern, (e.g. crosslink)
component: gateway

# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
note: Remove SignalFx receiver from the default gateway config in favor of the HTTP forwarder extension

# One or more tracking issues related to the change
issues: [6887]

# (Optional) One or more lines of additional information to render under the primary note.
# These lines will be padded with 2 spaces and then inserted directly into the document.
# Use pipe (|) for multiline entries.
subtext: |
This change means that metrics and logs sent to the gateway in the SignalFx format
will no longer be subject to the batch and memory limiter processors configured in
the gateway pipelines. Please ensure any required memory limiting or batching is
configured on the sending side (e.g. the agent). Please note that the `signalfx` receiver
will eventually be deprecated and removed.
25 changes: 10 additions & 15 deletions cmd/otelcol/config/collector/gateway_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,14 @@ extensions:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:6060"
egress:
endpoint: "https://api.${SPLUNK_REALM}.signalfx.com"
http_forwarder/signalfx:
ingress:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:9943"
# Whether to propagate the client metadata from the incoming requests to the backend.
# Should be enabled to preserve incoming access token
# include_metadata: true
egress:
endpoint: "https://ingest.${SPLUNK_REALM}.signalfx.com"
zpages:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:55679"
expvar:
Expand Down Expand Up @@ -57,11 +65,6 @@ receivers:
- source_labels: [ __name__ ]
regex: 'otelcol_processor_batch_.*'
action: drop
signalfx:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:9943"
# Whether to propagate the client metadata from the incoming requests to the downstream consumers
# Should be enabled to preserve incoming access token and use instead of exporter token
#include_metadata: true
zipkin:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:9411"

Expand Down Expand Up @@ -116,10 +119,6 @@ exporters:
realm: "${SPLUNK_REALM}"
sending_queue:
num_consumers: 32
## Uncomment below if your agents are sending via signalfx exporter
## to avoid double translations and exclusions.
#translation_rules: []
#exclude_metrics: []
signalfx/internal:
access_token: "${SPLUNK_ACCESS_TOKEN}"
realm: "${SPLUNK_REALM}"
Expand Down Expand Up @@ -157,7 +156,7 @@ connectors:
pipelines: [logs/entities]

service:
extensions: [headers_setter, health_check, http_forwarder, zpages]
extensions: [headers_setter, health_check, http_forwarder, http_forwarder/signalfx, zpages]
pipelines:
traces:
receivers: [jaeger, otlp, zipkin]
Expand All @@ -167,17 +166,13 @@ service:
#- resource/add_environment
exporters: [otlphttp]
metrics:
receivers: [otlp, signalfx]
receivers: [otlp]
processors: [memory_limiter, batch]
exporters: [signalfx]
metrics/internal:
receivers: [prometheus/internal]
processors: [memory_limiter, batch, resourcedetection/internal, resource/add_mode]
exporters: [signalfx/internal]
logs/signalfx:
receivers: [signalfx]
processors: [memory_limiter, batch]
exporters: [signalfx]
logs:
receivers: [routing/logs]
processors: [memory_limiter, batch]
Expand Down
25 changes: 10 additions & 15 deletions cmd/otelcol/fips/config/gateway_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,14 @@ extensions:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:6060"
egress:
endpoint: "https://api.${SPLUNK_REALM}.signalfx.com"
http_forwarder/signalfx:
ingress:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:9943"
# Whether to propagate the client metadata from the incoming requests to the backend.
# Should be enabled to preserve incoming access token
# include_metadata: true
egress:
endpoint: "https://ingest.${SPLUNK_REALM}.signalfx.com"
zpages:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:55679"
expvar:
Expand Down Expand Up @@ -57,11 +65,6 @@ receivers:
- source_labels: [ __name__ ]
regex: 'otelcol_processor_batch_.*'
action: drop
signalfx:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:9943"
# Whether to propagate the client metadata from the incoming requests to the downstream consumers
# Should be enabled to preserve incoming access token and use instead of exporter token
#include_metadata: true
zipkin:
endpoint: "${SPLUNK_LISTEN_INTERFACE}:9411"

Expand Down Expand Up @@ -109,10 +112,6 @@ exporters:
realm: "${SPLUNK_REALM}"
sending_queue:
num_consumers: 32
## Uncomment below if your agents are sending via signalfx exporter
## to avoid double translations and exclusions.
#translation_rules: []
#exclude_metrics: []
signalfx/internal:
access_token: "${SPLUNK_ACCESS_TOKEN}"
realm: "${SPLUNK_REALM}"
Expand All @@ -134,7 +133,7 @@ exporters:
log_data_enabled: false

service:
extensions: [headers_setter, health_check, http_forwarder, zpages]
extensions: [headers_setter, health_check, http_forwarder, http_forwarder/signalfx, zpages]
pipelines:
traces:
receivers: [jaeger, otlp, zipkin]
Expand All @@ -144,17 +143,13 @@ service:
#- resource/add_environment
exporters: [otlphttp]
metrics:
receivers: [otlp, signalfx]
receivers: [otlp]
processors: [memory_limiter, batch]
exporters: [signalfx]
metrics/internal:
receivers: [prometheus/internal]
processors: [memory_limiter, batch, resourcedetection/internal]
exporters: [signalfx/internal]
logs/signalfx:
receivers: [signalfx]
processors: [memory_limiter, batch]
exporters: [signalfx]
logs:
receivers: [otlp]
processors: [memory_limiter, batch]
Expand Down
19 changes: 6 additions & 13 deletions deployments/nomad/otel-gateway.nomad
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,12 @@ extensions:
http_forwarder:
egress:
endpoint: https://api.${SPLUNK_REALM}.signalfx.com
http_forwarder/signalfx:
ingress:
endpoint: 0.0.0.0:9943
include_metadata: true
egress:
endpoint: https://ingest.${SPLUNK_REALM}.signalfx.com
zpages: null
receivers:
jaeger:
Expand All @@ -160,9 +166,6 @@ receivers:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
signalfx:
include_metadata: true
endpoint: 0.0.0.0:9943
zipkin:
endpoint: 0.0.0.0:9411
prometheus/collector:
Expand Down Expand Up @@ -201,15 +204,6 @@ service:
- http_forwarder
- zpages
pipelines:
logs/signalfx-events:
exporters:
- signalfx
- debug
processors:
- memory_limiter
- batch
receivers:
- signalfx
metrics:
exporters:
- signalfx
Expand All @@ -219,7 +213,6 @@ service:
- batch
receivers:
- otlp
- signalfx
traces:
exporters:
- otlphttp
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,14 @@ extensions:
endpoint: "${env:SPLUNK_LISTEN_INTERFACE}:6060"
egress:
endpoint: "https://api.${env:SPLUNK_REALM}.signalfx.com"
http_forwarder/signalfx:
ingress:
endpoint: "${env:SPLUNK_LISTEN_INTERFACE}:9943"
# Whether to propagate the client metadata from the incoming requests to the backend.
# Should be enabled to preserve incoming access token
# include_metadata: true
egress:
endpoint: "https://ingest.${env:SPLUNK_REALM}.signalfx.com"
zpages:
endpoint: "${env:SPLUNK_LISTEN_INTERFACE}:55679"
expvar:
Expand Down Expand Up @@ -57,11 +65,6 @@ receivers:
- source_labels: [ __name__ ]
regex: 'otelcol_processor_batch_.*'
action: drop
signalfx:
endpoint: "${env:SPLUNK_LISTEN_INTERFACE}:9943"
# Whether to propagate the client metadata from the incoming requests to the downstream consumers
# Should be enabled to preserve incoming access token and use instead of exporter token
#include_metadata: true
zipkin:
endpoint: "${env:SPLUNK_LISTEN_INTERFACE}:9411"

Expand Down Expand Up @@ -142,14 +145,10 @@ service:
#- resource/add_environment
exporters: [otlphttp]
metrics:
receivers: [otlp, signalfx]
receivers: [otlp]
processors: [memory_limiter, batch]
exporters: [signalfx]
metrics/internal:
receivers: [prometheus/internal]
processors: [memory_limiter, batch, resourcedetection/internal, resource/telemetry]
exporters: [signalfx/internal]
logs/signalfx:
receivers: [signalfx]
processors: [memory_limiter, batch]
exporters: [signalfx]
20 changes: 10 additions & 10 deletions tests/general/default_config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,14 @@ func TestDefaultGatewayConfig(t *testing.T) {
"endpoint": fmt.Sprintf("%s:6060", ip),
},
},
"http_forwarder/signalfx": map[string]any{
"egress": map[string]any{
"endpoint": "https://ingest.not.real.signalfx.com",
},
"ingress": map[string]any{
"endpoint": fmt.Sprintf("%s:9943", ip),
},
},
"zpages": map[string]any{
"endpoint": fmt.Sprintf("%s:55679", ip),
"expvar": map[string]any{
Expand Down Expand Up @@ -197,9 +205,6 @@ func TestDefaultGatewayConfig(t *testing.T) {
},
},
},
"signalfx": map[string]any{
"endpoint": fmt.Sprintf("%s:9943", ip),
},
"zipkin": map[string]any{
"endpoint": fmt.Sprintf("%s:9411", ip),
},
Expand All @@ -217,18 +222,13 @@ func TestDefaultGatewayConfig(t *testing.T) {
},
},
"service": map[string]any{
"extensions": []any{"headers_setter", "health_check", "http_forwarder", "zpages"},
"extensions": []any{"headers_setter", "health_check", "http_forwarder", "http_forwarder/signalfx", "zpages"},
"pipelines": map[string]any{
"logs": map[string]any{
"exporters": []any{"splunk_hec", "splunk_hec/profiling"},
"processors": []any{"memory_limiter", "batch"},
"receivers": []any{"routing/logs"},
},
"logs/signalfx": map[string]any{
"exporters": []any{"signalfx"},
"processors": []any{"memory_limiter", "batch"},
"receivers": []any{"signalfx"},
},
"logs/entities": map[string]any{
"exporters": []any{"otlphttp/entities"},
"processors": []any{"memory_limiter", "batch"},
Expand All @@ -241,7 +241,7 @@ func TestDefaultGatewayConfig(t *testing.T) {
"metrics": map[string]any{
"exporters": []any{"signalfx"},
"processors": []any{"memory_limiter", "batch"},
"receivers": []any{"otlp", "signalfx"},
"receivers": []any{"otlp"},
},
"metrics/internal": map[string]any{
"exporters": []any{"signalfx/internal"},
Expand Down
Loading