Skip to content

Commit 20ea4cf

Browse files
committed
carbonexporter: add support for resourcetotelemetry
Signed-off-by: Bogdan Drutu <[email protected]>
1 parent 8cfcba9 commit 20ea4cf

File tree

5 files changed

+44
-0
lines changed

5 files changed

+44
-0
lines changed

.chloggen/addresourcetotelemetry.yaml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
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: "carbonexporter"
8+
9+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
10+
note: "Add support for resourcetotelemetry"
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: [29879]
14+
15+
# If your change doesn't affect end users or the exported elements of any package,
16+
# you should instead start your pull request title with [chore] or use the "Skip Changelog" label.
17+
# Optional: The change log or logs in which this entry should be included.
18+
# e.g. '[user]' or '[user, api]'
19+
# Include 'user' if the change is relevant to end users.
20+
# Include 'api' if there is a change to a library API.
21+
# Default: '[user]'
22+
change_logs: [user]

exporter/carbonexporter/config.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ import (
1010

1111
"go.opentelemetry.io/collector/config/confignet"
1212
"go.opentelemetry.io/collector/exporter/exporterhelper"
13+
14+
"github.com/open-telemetry/opentelemetry-collector-contrib/pkg/resourcetotelemetry"
1315
)
1416

1517
// Defaults for not specified configuration settings.
@@ -27,6 +29,9 @@ type Config struct {
2729
exporterhelper.TimeoutSettings `mapstructure:",squash"` // squash ensures fields are correctly decoded in embedded struct.
2830
QueueConfig exporterhelper.QueueSettings `mapstructure:"sending_queue"`
2931
RetryConfig exporterhelper.RetrySettings `mapstructure:"retry_on_failure"`
32+
33+
// ResourceToTelemetrySettings defines configuration for converting resource attributes to metric labels.
34+
ResourceToTelemetryConfig resourcetotelemetry.Settings `mapstructure:"resource_to_telemetry_conversion"`
3035
}
3136

3237
func (cfg *Config) Validate() error {

exporter/carbonexporter/config_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import (
1616
"go.opentelemetry.io/collector/exporter/exporterhelper"
1717

1818
"github.com/open-telemetry/opentelemetry-collector-contrib/exporter/carbonexporter/internal/metadata"
19+
"github.com/open-telemetry/opentelemetry-collector-contrib/pkg/resourcetotelemetry"
1920
)
2021

2122
func TestLoadConfig(t *testing.T) {
@@ -56,6 +57,9 @@ func TestLoadConfig(t *testing.T) {
5657
NumConsumers: 2,
5758
QueueSize: 10,
5859
},
60+
ResourceToTelemetryConfig: resourcetotelemetry.Settings{
61+
Enabled: true,
62+
},
5963
},
6064
},
6165
}

exporter/carbonexporter/go.mod

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ go 1.20
44

55
require (
66
github.com/open-telemetry/opentelemetry-collector-contrib/internal/common v0.91.0
7+
github.com/open-telemetry/opentelemetry-collector-contrib/pkg/resourcetotelemetry v0.91.0
78
github.com/stretchr/testify v1.8.4
89
go.opentelemetry.io/collector/component v0.91.0
910
go.opentelemetry.io/collector/config/confignet v0.91.0
@@ -57,3 +58,13 @@ retract (
5758
v0.76.1
5859
v0.65.0
5960
)
61+
62+
replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/resourcetotelemetry => ../../pkg/resourcetotelemetry
63+
64+
replace github.com/open-telemetry/opentelemetry-collector-contrib/internal/coreinternal => ../../internal/coreinternal
65+
66+
replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil => ../../pkg/pdatautil
67+
68+
replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatatest => ../../pkg/pdatatest
69+
70+
replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/golden => ../../pkg/golden

exporter/carbonexporter/testdata/config.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,5 @@ carbon/allsettings:
1919
multiplier: 3.14
2020
max_interval: 60s
2121
max_elapsed_time: 10m
22+
resource_to_telemetry_conversion:
23+
enabled: true

0 commit comments

Comments
 (0)