Skip to content

Commit 4a1d7c8

Browse files
authored
[exporter/signalfx] expose build version in user agent string (#27612)
**Description:** The current SignalFx exporter maps to a static user agent string "OpenTelemetry-Collector SignalFx Exporter/v0.0.1". This PR changes the version to match the build info version. **Link to tracking Issue:** Fixes #16841
1 parent b37a55e commit 4a1d7c8

File tree

2 files changed

+34
-4
lines changed

2 files changed

+34
-4
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Use this changelog template to create an entry for release notes.
2+
3+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
4+
change_type: enhancement
5+
6+
# The name of the component, or a single word describing the area of concern, (e.g. filelogreceiver)
7+
component: signalfxexporter
8+
9+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
10+
note: Add the build version to the user agent of the SignalFx exporter
11+
12+
# Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists.
13+
issues: [16841]
14+
15+
# (Optional) One or more lines of additional information to render under the primary note.
16+
# These lines will be padded with 2 spaces and then inserted directly into the document.
17+
# Use pipe (|) for multiline entries.
18+
subtext:
19+
20+
# If your change doesn't affect end users or the exported elements of any package,
21+
# you should instead start your pull request title with [chore] or use the "Skip Changelog" label.
22+
# Optional: The change log or logs in which this entry should be included.
23+
# e.g. '[user]' or '[user, api]'
24+
# Include 'user' if the change is relevant to end users.
25+
# Include 'api' if there is a change to a library API.
26+
# Default: '[user]'
27+
change_logs: []

exporter/signalfxexporter/exporter.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ func (sme *signalfMetadataExporter) ConsumeMetadata(metadata []*metadata.Metadat
5252

5353
type signalfxExporter struct {
5454
config *Config
55+
version string
5556
logger *zap.Logger
5657
telemetrySettings component.TelemetrySettings
5758
pushMetricsData func(ctx context.Context, md pmetric.Metrics) (droppedTimeSeries int, err error)
@@ -90,6 +91,7 @@ func newSignalFxExporter(
9091

9192
return &signalfxExporter{
9293
config: config,
94+
version: createSettings.BuildInfo.Version,
9395
logger: createSettings.Logger,
9496
telemetrySettings: createSettings.TelemetrySettings,
9597
converter: converter,
@@ -102,7 +104,7 @@ func (se *signalfxExporter) start(ctx context.Context, host component.Host) (err
102104
return err
103105
}
104106

105-
headers := buildHeaders(se.config)
107+
headers := buildHeaders(se.config, se.version)
106108
client, err := se.createClient(host)
107109
if err != nil {
108110
return err
@@ -176,6 +178,7 @@ func newEventExporter(config *Config, createSettings exporter.CreateSettings) (*
176178

177179
return &signalfxExporter{
178180
config: config,
181+
version: createSettings.BuildInfo.Version,
179182
logger: createSettings.Logger,
180183
telemetrySettings: createSettings.TelemetrySettings,
181184
}, nil
@@ -188,7 +191,7 @@ func (se *signalfxExporter) startLogs(_ context.Context, host component.Host) er
188191
return err
189192
}
190193

191-
headers := buildHeaders(se.config)
194+
headers := buildHeaders(se.config, se.version)
192195
client, err := se.createClient(host)
193196
if err != nil {
194197
return err
@@ -242,11 +245,11 @@ func (se *signalfxExporter) pushMetadata(metadata []*metadata.MetadataUpdate) er
242245
return se.dimClient.PushMetadata(metadata)
243246
}
244247

245-
func buildHeaders(config *Config) map[string]string {
248+
func buildHeaders(config *Config, version string) map[string]string {
246249
headers := map[string]string{
247250
"Connection": "keep-alive",
248251
"Content-Type": "application/x-protobuf",
249-
"User-Agent": "OpenTelemetry-Collector SignalFx Exporter/v0.0.1",
252+
"User-Agent": fmt.Sprintf("OpenTelemetry-Collector SignalFx Exporter/%s", version),
250253
}
251254

252255
if config.AccessToken != "" {

0 commit comments

Comments
 (0)