From adda8ee311ca5d31e45a6e8b7c9306b70219eb3a Mon Sep 17 00:00:00 2001 From: Paulin Todev Date: Tue, 23 Jan 2024 18:53:41 +0000 Subject: [PATCH] [processor/resourcedetection] Remove unnecessary resource attributes from the Consul detector. (#30727) This PR removes several attributes which must have been added by mistake. The [docs](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/processor/resourcedetectionprocessor#consul) don't mention them, and the [Detect](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/resourcedetectionprocessor/internal/consul/consul.go#L66) function doesn't use them. --- .../internal/metadata/generated_config.go | 34 ++----------- .../metadata/generated_config_test.go | 26 +++------- .../internal/metadata/generated_resource.go | 49 ------------------- .../metadata/generated_resource_test.go | 48 ++---------------- .../internal/metadata/testdata/config.yaml | 28 ----------- .../internal/consul/metadata.yaml | 28 ----------- 6 files changed, 12 insertions(+), 201 deletions(-) diff --git a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_config.go b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_config.go index 7bc80ac33d403..9acccdfbfee10 100644 --- a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_config.go +++ b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_config.go @@ -25,41 +25,13 @@ func (rac *ResourceAttributeConfig) Unmarshal(parser *confmap.Conf) error { // ResourceAttributesConfig provides config for resourcedetectionprocessor/consul resource attributes. type ResourceAttributesConfig struct { - AzureResourcegroupName ResourceAttributeConfig `mapstructure:"azure.resourcegroup.name"` - AzureVMName ResourceAttributeConfig `mapstructure:"azure.vm.name"` - AzureVMScalesetName ResourceAttributeConfig `mapstructure:"azure.vm.scaleset.name"` - AzureVMSize ResourceAttributeConfig `mapstructure:"azure.vm.size"` - CloudAccountID ResourceAttributeConfig `mapstructure:"cloud.account.id"` - CloudPlatform ResourceAttributeConfig `mapstructure:"cloud.platform"` - CloudProvider ResourceAttributeConfig `mapstructure:"cloud.provider"` - CloudRegion ResourceAttributeConfig `mapstructure:"cloud.region"` - HostID ResourceAttributeConfig `mapstructure:"host.id"` - HostName ResourceAttributeConfig `mapstructure:"host.name"` + CloudRegion ResourceAttributeConfig `mapstructure:"cloud.region"` + HostID ResourceAttributeConfig `mapstructure:"host.id"` + HostName ResourceAttributeConfig `mapstructure:"host.name"` } func DefaultResourceAttributesConfig() ResourceAttributesConfig { return ResourceAttributesConfig{ - AzureResourcegroupName: ResourceAttributeConfig{ - Enabled: true, - }, - AzureVMName: ResourceAttributeConfig{ - Enabled: true, - }, - AzureVMScalesetName: ResourceAttributeConfig{ - Enabled: true, - }, - AzureVMSize: ResourceAttributeConfig{ - Enabled: true, - }, - CloudAccountID: ResourceAttributeConfig{ - Enabled: true, - }, - CloudPlatform: ResourceAttributeConfig{ - Enabled: true, - }, - CloudProvider: ResourceAttributeConfig{ - Enabled: true, - }, CloudRegion: ResourceAttributeConfig{ Enabled: true, }, diff --git a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_config_test.go b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_config_test.go index 2dde315e26285..c8cd3733694c8 100644 --- a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_config_test.go +++ b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_config_test.go @@ -25,31 +25,17 @@ func TestResourceAttributesConfig(t *testing.T) { { name: "all_set", want: ResourceAttributesConfig{ - AzureResourcegroupName: ResourceAttributeConfig{Enabled: true}, - AzureVMName: ResourceAttributeConfig{Enabled: true}, - AzureVMScalesetName: ResourceAttributeConfig{Enabled: true}, - AzureVMSize: ResourceAttributeConfig{Enabled: true}, - CloudAccountID: ResourceAttributeConfig{Enabled: true}, - CloudPlatform: ResourceAttributeConfig{Enabled: true}, - CloudProvider: ResourceAttributeConfig{Enabled: true}, - CloudRegion: ResourceAttributeConfig{Enabled: true}, - HostID: ResourceAttributeConfig{Enabled: true}, - HostName: ResourceAttributeConfig{Enabled: true}, + CloudRegion: ResourceAttributeConfig{Enabled: true}, + HostID: ResourceAttributeConfig{Enabled: true}, + HostName: ResourceAttributeConfig{Enabled: true}, }, }, { name: "none_set", want: ResourceAttributesConfig{ - AzureResourcegroupName: ResourceAttributeConfig{Enabled: false}, - AzureVMName: ResourceAttributeConfig{Enabled: false}, - AzureVMScalesetName: ResourceAttributeConfig{Enabled: false}, - AzureVMSize: ResourceAttributeConfig{Enabled: false}, - CloudAccountID: ResourceAttributeConfig{Enabled: false}, - CloudPlatform: ResourceAttributeConfig{Enabled: false}, - CloudProvider: ResourceAttributeConfig{Enabled: false}, - CloudRegion: ResourceAttributeConfig{Enabled: false}, - HostID: ResourceAttributeConfig{Enabled: false}, - HostName: ResourceAttributeConfig{Enabled: false}, + CloudRegion: ResourceAttributeConfig{Enabled: false}, + HostID: ResourceAttributeConfig{Enabled: false}, + HostName: ResourceAttributeConfig{Enabled: false}, }, }, } diff --git a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_resource.go b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_resource.go index 3ed9f08abc827..c2cdbbd7aa9c8 100644 --- a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_resource.go +++ b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_resource.go @@ -21,55 +21,6 @@ func NewResourceBuilder(rac ResourceAttributesConfig) *ResourceBuilder { } } -// SetAzureResourcegroupName sets provided value as "azure.resourcegroup.name" attribute. -func (rb *ResourceBuilder) SetAzureResourcegroupName(val string) { - if rb.config.AzureResourcegroupName.Enabled { - rb.res.Attributes().PutStr("azure.resourcegroup.name", val) - } -} - -// SetAzureVMName sets provided value as "azure.vm.name" attribute. -func (rb *ResourceBuilder) SetAzureVMName(val string) { - if rb.config.AzureVMName.Enabled { - rb.res.Attributes().PutStr("azure.vm.name", val) - } -} - -// SetAzureVMScalesetName sets provided value as "azure.vm.scaleset.name" attribute. -func (rb *ResourceBuilder) SetAzureVMScalesetName(val string) { - if rb.config.AzureVMScalesetName.Enabled { - rb.res.Attributes().PutStr("azure.vm.scaleset.name", val) - } -} - -// SetAzureVMSize sets provided value as "azure.vm.size" attribute. -func (rb *ResourceBuilder) SetAzureVMSize(val string) { - if rb.config.AzureVMSize.Enabled { - rb.res.Attributes().PutStr("azure.vm.size", val) - } -} - -// SetCloudAccountID sets provided value as "cloud.account.id" attribute. -func (rb *ResourceBuilder) SetCloudAccountID(val string) { - if rb.config.CloudAccountID.Enabled { - rb.res.Attributes().PutStr("cloud.account.id", val) - } -} - -// SetCloudPlatform sets provided value as "cloud.platform" attribute. -func (rb *ResourceBuilder) SetCloudPlatform(val string) { - if rb.config.CloudPlatform.Enabled { - rb.res.Attributes().PutStr("cloud.platform", val) - } -} - -// SetCloudProvider sets provided value as "cloud.provider" attribute. -func (rb *ResourceBuilder) SetCloudProvider(val string) { - if rb.config.CloudProvider.Enabled { - rb.res.Attributes().PutStr("cloud.provider", val) - } -} - // SetCloudRegion sets provided value as "cloud.region" attribute. func (rb *ResourceBuilder) SetCloudRegion(val string) { if rb.config.CloudRegion.Enabled { diff --git a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_resource_test.go b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_resource_test.go index da5923dfcf1b1..2cf72ae65c293 100644 --- a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_resource_test.go +++ b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/generated_resource_test.go @@ -13,13 +13,6 @@ func TestResourceBuilder(t *testing.T) { t.Run(test, func(t *testing.T) { cfg := loadResourceAttributesConfig(t, test) rb := NewResourceBuilder(cfg) - rb.SetAzureResourcegroupName("azure.resourcegroup.name-val") - rb.SetAzureVMName("azure.vm.name-val") - rb.SetAzureVMScalesetName("azure.vm.scaleset.name-val") - rb.SetAzureVMSize("azure.vm.size-val") - rb.SetCloudAccountID("cloud.account.id-val") - rb.SetCloudPlatform("cloud.platform-val") - rb.SetCloudProvider("cloud.provider-val") rb.SetCloudRegion("cloud.region-val") rb.SetHostID("host.id-val") rb.SetHostName("host.name-val") @@ -29,9 +22,9 @@ func TestResourceBuilder(t *testing.T) { switch test { case "default": - assert.Equal(t, 10, res.Attributes().Len()) + assert.Equal(t, 3, res.Attributes().Len()) case "all_set": - assert.Equal(t, 10, res.Attributes().Len()) + assert.Equal(t, 3, res.Attributes().Len()) case "none_set": assert.Equal(t, 0, res.Attributes().Len()) return @@ -39,42 +32,7 @@ func TestResourceBuilder(t *testing.T) { assert.Failf(t, "unexpected test case: %s", test) } - val, ok := res.Attributes().Get("azure.resourcegroup.name") - assert.True(t, ok) - if ok { - assert.EqualValues(t, "azure.resourcegroup.name-val", val.Str()) - } - val, ok = res.Attributes().Get("azure.vm.name") - assert.True(t, ok) - if ok { - assert.EqualValues(t, "azure.vm.name-val", val.Str()) - } - val, ok = res.Attributes().Get("azure.vm.scaleset.name") - assert.True(t, ok) - if ok { - assert.EqualValues(t, "azure.vm.scaleset.name-val", val.Str()) - } - val, ok = res.Attributes().Get("azure.vm.size") - assert.True(t, ok) - if ok { - assert.EqualValues(t, "azure.vm.size-val", val.Str()) - } - val, ok = res.Attributes().Get("cloud.account.id") - assert.True(t, ok) - if ok { - assert.EqualValues(t, "cloud.account.id-val", val.Str()) - } - val, ok = res.Attributes().Get("cloud.platform") - assert.True(t, ok) - if ok { - assert.EqualValues(t, "cloud.platform-val", val.Str()) - } - val, ok = res.Attributes().Get("cloud.provider") - assert.True(t, ok) - if ok { - assert.EqualValues(t, "cloud.provider-val", val.Str()) - } - val, ok = res.Attributes().Get("cloud.region") + val, ok := res.Attributes().Get("cloud.region") assert.True(t, ok) if ok { assert.EqualValues(t, "cloud.region-val", val.Str()) diff --git a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/testdata/config.yaml b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/testdata/config.yaml index d060bcd291d6f..8ed79c2d4ce6a 100644 --- a/processor/resourcedetectionprocessor/internal/consul/internal/metadata/testdata/config.yaml +++ b/processor/resourcedetectionprocessor/internal/consul/internal/metadata/testdata/config.yaml @@ -1,20 +1,6 @@ default: all_set: resource_attributes: - azure.resourcegroup.name: - enabled: true - azure.vm.name: - enabled: true - azure.vm.scaleset.name: - enabled: true - azure.vm.size: - enabled: true - cloud.account.id: - enabled: true - cloud.platform: - enabled: true - cloud.provider: - enabled: true cloud.region: enabled: true host.id: @@ -23,20 +9,6 @@ all_set: enabled: true none_set: resource_attributes: - azure.resourcegroup.name: - enabled: false - azure.vm.name: - enabled: false - azure.vm.scaleset.name: - enabled: false - azure.vm.size: - enabled: false - cloud.account.id: - enabled: false - cloud.platform: - enabled: false - cloud.provider: - enabled: false cloud.region: enabled: false host.id: diff --git a/processor/resourcedetectionprocessor/internal/consul/metadata.yaml b/processor/resourcedetectionprocessor/internal/consul/metadata.yaml index 337b0dc5d02a5..582d4fc1c2510 100644 --- a/processor/resourcedetectionprocessor/internal/consul/metadata.yaml +++ b/processor/resourcedetectionprocessor/internal/consul/metadata.yaml @@ -3,22 +3,10 @@ type: resourcedetectionprocessor/consul parent: resourcedetection resource_attributes: - cloud.provider: - description: The cloud.provider - type: string - enabled: true - cloud.platform: - description: The cloud.platform - type: string - enabled: true cloud.region: description: The cloud.region type: string enabled: true - cloud.account.id: - description: The cloud.account.id - type: string - enabled: true host.name: description: The hostname type: string @@ -27,19 +15,3 @@ resource_attributes: description: The host.id type: string enabled: true - azure.resourcegroup.name: - description: The azure.resourcegroup.name - enabled: true - type: string - azure.vm.name: - description: The azure.vm.name - enabled: true - type: string - azure.vm.scaleset.name: - description: The azure.vm.scaleset.name - enabled: true - type: string - azure.vm.size: - description: The azure.vm.size - enabled: true - type: string \ No newline at end of file