Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ConfigProvider): Modify config merge to do replace instead of update for Specific tags for Remotely managed collectors #1604

Merged
merged 138 commits into from
Dec 10, 2024
Merged
Show file tree
Hide file tree
Changes from 134 commits
Commits
Show all changes
138 commits
Select commit Hold shift + click to select a range
04f6cb0
Update provider.go
jagan2221 Jun 11, 2024
28013f4
Update provider.go
jagan2221 Jun 13, 2024
64d9df3
Create utils.go
jagan2221 Jun 13, 2024
5be51e6
Create go.mod
jagan2221 Jun 13, 2024
bf94cab
Update provider.go
jagan2221 Jun 13, 2024
f47b831
link util with providers
jagan2221 Jun 13, 2024
6d7f86e
move common util to providerutils package
jagan2221 Jun 13, 2024
3ffa983
refactor
jagan2221 Jun 13, 2024
4b39061
build err
jagan2221 Jun 13, 2024
0a5c12d
pkg/configprovider/opampprovider/go.mod
jagan2221 Jun 13, 2024
f95b34d
Update pkg/configprovider/opampprovider/provider.go
jagan2221 Jun 26, 2024
a136bff
check while key path while removing fields+ add test cases
jagan2221 Jun 26, 2024
44125f6
Merge branch 'j_config_merge_override' of https://github.com/SumoLogi…
jagan2221 Jun 26, 2024
3ea8f1b
Update pkg/configprovider/providerutil/utils.go
jagan2221 Jun 27, 2024
d80a304
Review changes
jagan2221 Jul 2, 2024
e0912f9
Update utils.go
jagan2221 Jul 2, 2024
6f4ac0b
Create 1604.changed.txt
jagan2221 Jul 3, 2024
c49cc08
Delete .changelog/.changelog directory
jagan2221 Jul 3, 2024
083e81e
Add files via upload
jagan2221 Jul 3, 2024
6a6cefe
Update utils.go
jagan2221 Jul 3, 2024
98ba5ac
Add makefile
jagan2221 Jul 3, 2024
055013f
Rename Makefile.txt to Makefile
jagan2221 Jul 3, 2024
dccff3b
add mod file for providerUtil
jagan2221 Jul 3, 2024
3e177fc
goimports refactror
jagan2221 Jul 3, 2024
850f7e7
goimports refactor
jagan2221 Jul 3, 2024
e1079be
refactor UT
jagan2221 Jul 4, 2024
8d96491
Update .changelog/1604.changed.txt
jagan2221 Jul 4, 2024
ae4bcc8
Rename 1604.changed.txt to 1604.breaking.txt
jagan2221 Jul 4, 2024
438ce8a
Update upgrading.md- breaking changes for config merge flow change
jagan2221 Jul 4, 2024
0b88b1e
Update upgrading.md(review changes)
jagan2221 Jul 5, 2024
a3e3261
Merge branch 'main' into j_config_merge_override
jagan2221 Jul 5, 2024
c3aa5ec
Update docs/upgrading.md
jagan2221 Jul 9, 2024
1f4d959
Update utils.go
jagan2221 Jul 10, 2024
4f3acc5
Merge branch 'main' into j_config_merge_override
jagan2221 Jul 16, 2024
3bea173
Update upgrading.md
jagan2221 Jul 16, 2024
4a81307
Update utils.go
jagan2221 Jul 16, 2024
89df819
Update utils.go
jagan2221 Jul 17, 2024
15c02ee
Update utils.go
jagan2221 Jul 17, 2024
47883a8
Merge branch 'main' into j_config_merge_override
jagan2221 Jul 30, 2024
3e13dd3
Update upgrading.md
jagan2221 Aug 1, 2024
3f931b9
Update opamp_agent.go
jagan2221 Aug 30, 2024
34103e8
Update opamp_agent.go
jagan2221 Sep 16, 2024
dfe9f87
Simulate en error to see how agent behaves
jagan2221 Sep 17, 2024
844457a
Update opamp_agent.go
jagan2221 Sep 17, 2024
d0819b4
Update opamp_agent.go
jagan2221 Sep 20, 2024
46c3e56
Update opamp_agent.go
jagan2221 Sep 20, 2024
e01d6ad
Update opamp_agent.go
jagan2221 Sep 20, 2024
473f940
Update components.go
jagan2221 Sep 20, 2024
3cfeed2
Update go.mod
jagan2221 Sep 20, 2024
c2f28b6
Update go.sum
jagan2221 Sep 20, 2024
6bc6400
Merge branch 'main' into j_config_merge_override
jagan2221 Sep 20, 2024
4f327e4
Update opamp_agent.go
jagan2221 Sep 20, 2024
168c20e
Update components.go
jagan2221 Sep 20, 2024
25ec054
Update go.sum
jagan2221 Sep 20, 2024
595308d
Update go.mod
jagan2221 Sep 20, 2024
d10bb30
Update opamp_agent.go
jagan2221 Sep 20, 2024
a041740
Update opamp_agent.go
jagan2221 Sep 20, 2024
9faba5c
Update opamp_agent.go
jagan2221 Sep 20, 2024
388c38a
Update opamp_agent.go
jagan2221 Sep 20, 2024
ac2d872
Update opamp_agent.go
jagan2221 Oct 1, 2024
975f321
Update opamp_agent.go
jagan2221 Oct 1, 2024
b238169
Merge branch 'main' into j_config_merge_override
jagan2221 Oct 17, 2024
be003c7
Update go.sum
jagan2221 Oct 17, 2024
3c1007b
Update opamp_agent.go
jagan2221 Oct 17, 2024
b920ccb
Update upgrading.md
jagan2221 Oct 17, 2024
58ec38e
Update upgrading.md
jagan2221 Oct 22, 2024
d9014a7
enable tag edit config merge flow change only for remotely managed co…
jagan2221 Nov 13, 2024
64c4ac7
Update provider.go
jagan2221 Nov 13, 2024
0569744
Update provider.go
jagan2221 Nov 13, 2024
114c655
Update upgrading.md
jagan2221 Nov 13, 2024
c9e63da
Update and rename 1604.breaking.txt to 1604.changed.txt
jagan2221 Nov 13, 2024
8243404
Update provider.go
jagan2221 Nov 13, 2024
165b03a
Merge branch 'main' into j_config_merge_override
jagan2221 Nov 13, 2024
f168cef
Merge branch 'main' into j_config_merge_override
jagan2221 Nov 19, 2024
425a8d3
Update components.go
jagan2221 Nov 19, 2024
b28a208
Merge branch 'main' into j_config_merge_override
jagan2221 Nov 25, 2024
a26cc65
Update components.go
jagan2221 Nov 25, 2024
b5203ee
Create srcconf.yaml
jagan2221 Dec 1, 2024
e7403c6
Create mergeconf.yaml
jagan2221 Dec 1, 2024
64d498b
Update srcconf.yaml
jagan2221 Dec 1, 2024
d857ad2
Update srcconf.yaml
jagan2221 Dec 1, 2024
0cbbbc8
Update mergeconf.yaml
jagan2221 Dec 1, 2024
0deca85
Update srcconf.yaml
jagan2221 Dec 2, 2024
2edb172
Update mergeconf.yaml
jagan2221 Dec 2, 2024
26fbe4b
Update srcconf.yaml
jagan2221 Dec 2, 2024
d674045
Update mergeconf.yaml
jagan2221 Dec 2, 2024
dbb09af
Update provider_test.go
jagan2221 Dec 2, 2024
e1c9f41
Update provider_test.go
jagan2221 Dec 2, 2024
6059738
Update provider_test.go
jagan2221 Dec 2, 2024
98a4a4e
Update provider_test.go
jagan2221 Dec 2, 2024
b1d687f
Rename srcconf.yaml to a_srcconf.yaml
jagan2221 Dec 2, 2024
276e182
Update provider_test.go
jagan2221 Dec 2, 2024
00327ac
Update provider_test.go
jagan2221 Dec 2, 2024
557bbea
Update provider_test.go
jagan2221 Dec 2, 2024
86078df
Merge branch 'main' into j_config_merge_override
jagan2221 Dec 2, 2024
aea7212
Update opamp_agent.go
jagan2221 Dec 2, 2024
fafe75a
Update opamp_agent.go
jagan2221 Dec 2, 2024
a4d3d61
Update config.go
jagan2221 Dec 4, 2024
8329390
Update factory.go
jagan2221 Dec 4, 2024
42974f0
Update opamp_agent.go
jagan2221 Dec 4, 2024
d14782b
Update opamp_agent.go
jagan2221 Dec 4, 2024
ae41459
add disable flag for tag edit in opamp provider
jagan2221 Dec 4, 2024
8b23a2c
.
jagan2221 Dec 4, 2024
3459989
Create configMergeDisabled.yaml
jagan2221 Dec 4, 2024
bf923f6
Update provider_test.go
jagan2221 Dec 4, 2024
8ada555
Update provider_test.go
jagan2221 Dec 4, 2024
f213f26
Update provider_test.go
jagan2221 Dec 4, 2024
5f2ade7
Update provider.go
jagan2221 Dec 4, 2024
bc34997
Update provider_test.go
jagan2221 Dec 4, 2024
11e7d5a
Update provider_test.go
jagan2221 Dec 4, 2024
97dfd98
Create configMergeEnabled.yaml
jagan2221 Dec 4, 2024
9552c37
Update provider_test.go
jagan2221 Dec 4, 2024
c9fbbd0
Update provider_test.go
jagan2221 Dec 4, 2024
81f6c4a
Update configMergeDisabled.yaml
jagan2221 Dec 4, 2024
b42e883
Update opamp_agent.go
jagan2221 Dec 4, 2024
853ecdb
Rename configMergeDisabled.yaml to config_new_merge_disabled.yaml
jagan2221 Dec 4, 2024
6d1439e
Rename configMergeEnabled.yaml to config_new_merge_enabled.yaml
jagan2221 Dec 4, 2024
43a2fb8
Update provider_test.go
jagan2221 Dec 4, 2024
3fead9f
Update config_new_merge_disabled.yaml
jagan2221 Dec 5, 2024
f2aa9de
Update README.md
jagan2221 Dec 5, 2024
74eaf75
Update provider_test.go
jagan2221 Dec 5, 2024
a9e89dc
Update provider.go
jagan2221 Dec 5, 2024
5849b83
Update config.go
jagan2221 Dec 5, 2024
4aecf19
Update README.md
jagan2221 Dec 6, 2024
699c3a4
Update config.go
jagan2221 Dec 6, 2024
c49e7f1
Update provider.go
jagan2221 Dec 6, 2024
6c1461d
Update provider.go
jagan2221 Dec 6, 2024
a9f3011
Update provider_test.go
jagan2221 Dec 6, 2024
2067383
Update config_new_merge_disabled.yaml
jagan2221 Dec 6, 2024
ee5bcce
Update README.md
jagan2221 Dec 6, 2024
745ae28
Update config.go
jagan2221 Dec 6, 2024
ebf5fa1
Update opamp_agent.go
jagan2221 Dec 6, 2024
2bf3dea
Update README.md
jagan2221 Dec 6, 2024
86d4cf1
Update pkg/extension/opampextension/README.md
jagan2221 Dec 9, 2024
4cc054c
Update utils.go
jagan2221 Dec 10, 2024
a7ff13d
modify UT for collector_fields test
jagan2221 Dec 10, 2024
eb4f854
Update mergeconf.yaml
jagan2221 Dec 10, 2024
833974b
Update mergeconf.yaml
jagan2221 Dec 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .changelog/1604.changed.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
feat(ConfigProvider)!: Modify config merge to do replace instead of update for Specific tags for Remotely managed collectors
1 change: 1 addition & 0 deletions otelcolbuilder/.otelcol-builder.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -245,3 +245,4 @@ replaces:
- github.com/open-telemetry/opentelemetry-collector-contrib/extension/sumologicextension v0.108.0 => github.com/SumoLogic/opentelemetry-collector-contrib/extension/sumologicextension 6afd5814da3e09014683ab0e4a08f8f781bc904f
- github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/globprovider => ../../pkg/configprovider/globprovider
- github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/opampprovider => ../../pkg/configprovider/opampprovider
- github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/providerutil => ../../pkg/configprovider/providerutil
3 changes: 3 additions & 0 deletions pkg/configprovider/globprovider/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ go 1.22.0
toolchain go1.22.8

require (
github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/providerutil v0.0.0-00010101000000-000000000000
github.com/stretchr/testify v1.9.0
go.opentelemetry.io/collector/confmap v0.107.0
gopkg.in/yaml.v3 v3.0.1
Expand All @@ -25,3 +26,5 @@ require (
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/zap v1.27.0 // indirect
)

replace github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/providerutil => ../providerutil
25 changes: 17 additions & 8 deletions pkg/configprovider/globprovider/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,27 +22,33 @@ import (
"sort"
"strings"

"gopkg.in/yaml.v3"

"github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/providerutil"
"go.opentelemetry.io/collector/confmap"
"gopkg.in/yaml.v3"
)

const (
schemeName = "glob"
schemePrefix = schemeName + ":"
)

type provider struct{}
type Provider struct{
remotelyManagedMergeFlow bool
}

func NewWithSettings(_ confmap.ProviderSettings) confmap.Provider {
return &provider{}
return &Provider{}
}

func NewFactory() confmap.ProviderFactory {
return confmap.NewProviderFactory(NewWithSettings)
}

func (fmp *provider) Retrieve(ctx context.Context, uri string, _ confmap.WatcherFunc) (*confmap.Retrieved, error) {
func (fmp *Provider) SetRemotelyManagedMergeFlow(enable bool) {
fmp.remotelyManagedMergeFlow = enable
}

func (fmp *Provider) Retrieve(ctx context.Context, uri string, _ confmap.WatcherFunc) (*confmap.Retrieved, error) {
var rawConf map[string]interface{}
if !strings.HasPrefix(uri, schemePrefix) {
return &confmap.Retrieved{}, fmt.Errorf("%q uri is not supported by %q provider", uri, schemeName)
Expand All @@ -68,18 +74,21 @@ func (fmp *provider) Retrieve(ctx context.Context, uri string, _ confmap.Watcher
return &confmap.Retrieved{}, err
}
pathConf := confmap.NewFromStringMap(rawConf)
if fmp.remotelyManagedMergeFlow {
providerutil.PrepareForReplaceBehavior(conf, pathConf)
}
if err := conf.Merge(pathConf); err != nil {
return &confmap.Retrieved{}, err
}
}

}
return confmap.NewRetrieved(conf.ToStringMap())
}

func (*provider) Scheme() string {
func (*Provider) Scheme() string {
return schemeName
}

func (fmp *provider) Shutdown(context.Context) error {
func (fmp *Provider) Shutdown(context.Context) error {
return nil
}
46 changes: 46 additions & 0 deletions pkg/configprovider/globprovider/provider_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -159,3 +159,49 @@ func ValidateProviderScheme(p confmap.Provider) error {

return nil
}

func TestRemotelyManagedMergeFlow(t *testing.T) {
fp := NewWithSettings(confmap.ProviderSettings{})
if globProvider, ok := fp.(*Provider); ok {
globProvider.SetRemotelyManagedMergeFlow(true)
}
ret, err := fp.Retrieve(context.Background(), schemePrefix+filepath.Join("testdata", "mergefunc", "*.yaml"), nil)
require.NoError(t, err)
retMap, err := ret.AsConf()
assert.NoError(t, err)
expectedMap := confmap.NewFromStringMap(map[string]interface{}{
"extensions": map[string]interface{}{
"sumologic": map[string]interface{}{
"childKey": "value",
"collector_fields": map[string]interface{}{
"zone": "eu",
},
},
},
"processor": "someprocessor",
})
assert.Equal(t, expectedMap, retMap)
assert.NoError(t, fp.Shutdown(context.Background()))
}

func TestLocallyManagedMergeFlow(t *testing.T) {
fp := NewWithSettings(confmap.ProviderSettings{})
ret, err := fp.Retrieve(context.Background(), schemePrefix+filepath.Join("testdata", "mergefunc", "*.yaml"), nil)
require.NoError(t, err)
retMap, err := ret.AsConf()
assert.NoError(t, err)
expectedMap := confmap.NewFromStringMap(map[string]interface{}{
"extensions": map[string]interface{}{
"sumologic": map[string]interface{}{
"childKey": "value",
"collector_fields": map[string]interface{}{
"cluster": "cluster-1",
"zone": "eu",
},
},
},
"processor": "someprocessor",
})
assert.Equal(t, expectedMap, retMap)
assert.NoError(t, fp.Shutdown(context.Background()))
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
extensions:
sumologic:
childKey: "value"
collector_fields:
cluster: "cluster-1"
processor: "someprocessor"
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
extensions:
sumologic:
childKey: "value"
collector_fields:
zone: "eu"
3 changes: 3 additions & 0 deletions pkg/configprovider/opampprovider/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ toolchain go1.22.8

require (
github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/globprovider v0.0.0-00010101000000-000000000000
github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/providerutil v0.0.0-00010101000000-000000000000
github.com/google/go-cmp v0.5.9
go.opentelemetry.io/collector/confmap v1.14.0
go.opentelemetry.io/collector/confmap/provider/fileprovider v0.108.0
Expand All @@ -25,3 +26,5 @@ require (
)

replace github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/globprovider => ../globprovider

replace github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/providerutil => ../providerutil
17 changes: 17 additions & 0 deletions pkg/configprovider/opampprovider/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import (
"strings"

"github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/globprovider"
"github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/providerutil"
"go.opentelemetry.io/collector/confmap"
"go.opentelemetry.io/collector/confmap/provider/fileprovider"
"gopkg.in/yaml.v2"
Expand All @@ -38,6 +39,7 @@ type ConfigFragment struct {
Extensions struct {
OpAmp struct {
RemoteConfigurationDirectory string `yaml:"remote_configuration_directory"`
DisableTagReplacement bool `yaml:"disable_tag_replacement"`
} `yaml:"opamp"`
} `yaml:"extensions"`
}
Expand All @@ -46,6 +48,10 @@ func (c ConfigFragment) ConfigDir() string {
return c.Extensions.OpAmp.RemoteConfigurationDirectory
}

func (c ConfigFragment) IsRemotelyManagedMergeFlow() bool {
return !c.Extensions.OpAmp.DisableTagReplacement
}

func (c ConfigFragment) Validate() error {
if c.ConfigDir() == "" {
return errors.New("remote_configuration_directory missing from opamp extension")
Expand Down Expand Up @@ -84,6 +90,11 @@ func (p *Provider) Retrieve(ctx context.Context, configPath string, fn confmap.W
}
conf := confmap.New()
glob := p.GlobProvider

if globProvider, ok := glob.(*globprovider.Provider); ok {
globProvider.SetRemotelyManagedMergeFlow(cfg.IsRemotelyManagedMergeFlow())
}

retrieved, err := glob.Retrieve(ctx, glob.Scheme()+":"+filepath.Join(cfg.ConfigDir(), "*.yaml"), fn)
if err != nil {
return nil, err
Expand All @@ -100,6 +111,12 @@ func (p *Provider) Retrieve(ctx context.Context, configPath string, fn confmap.W
if err != nil {
return nil, err
}

if cfg.IsRemotelyManagedMergeFlow() {
// Order of conf parameters is important, see method comments
providerutil.PrepareForReplaceBehavior(addlConf, retConf)
}

// merge the file config in
if err := conf.Merge(addlConf); err != nil {
return nil, err
Expand Down
69 changes: 69 additions & 0 deletions pkg/configprovider/opampprovider/provider_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,75 @@ func TestValid(t *testing.T) {
}
}

func TestRemotelyManagedFlowDisabled(t *testing.T) {
p := NewWithSettings(confmap.ProviderSettings{})
defer func() {
if err := p.Shutdown(context.Background()); err != nil {
t.Error(err)
}
}()

configPath := "opamp:" + absolutePath(t, filepath.Join("testdata", "config_new_merge_disabled.yaml"))
t.Logf("loading opamp config file: %s", configPath)

ret, err := p.Retrieve(context.Background(), configPath, nil)
if err != nil {
t.Fatal(err)
}
conf, err := ret.AsConf()
if err != nil {
t.Fatal(err)
}
got := conf.ToStringMap()
exp := confmap.NewFromStringMap(map[string]any{
"extensions::sumologic::childKey": "value",
"extensions::sumologic::collector_fields::cluster": "cluster-1",
"extensions::sumologic::collector_fields::zone": "eu",
"processor": "someprocessor",
"extensions::opamp::remote_configuration_directory": "../globprovider/testdata/mergefunc",
"extensions::opamp::endpoint": "wss://example.com/v1/opamp",
"extensions::opamp::disable_tag_replacement": true,
})
want := exp.ToStringMap()
if diff := cmp.Diff(want, got); diff != "" {
t.Errorf("Retrieve() mismatch (-want +got):\n%s", diff)
}
}

func TestRemotelyManagedFlowEnabled(t *testing.T) {
p := NewWithSettings(confmap.ProviderSettings{})
defer func() {
if err := p.Shutdown(context.Background()); err != nil {
t.Error(err)
}
}()

configPath := "opamp:" + absolutePath(t, filepath.Join("testdata", "config_new_merge_enabled.yaml"))
t.Logf("loading opamp config file: %s", configPath)

ret, err := p.Retrieve(context.Background(), configPath, nil)
if err != nil {
t.Fatal(err)
}
conf, err := ret.AsConf()
if err != nil {
t.Fatal(err)
}
got := conf.ToStringMap()
exp := confmap.NewFromStringMap(map[string]any{
"extensions::sumologic::childKey": "value",
"extensions::sumologic::collector_fields::zone": "eu",
"processor": "someprocessor",
"extensions::opamp::remote_configuration_directory": "../globprovider/testdata/mergefunc",
"extensions::opamp::endpoint": "wss://example.com/v1/opamp",
})
want := exp.ToStringMap()
if diff := cmp.Diff(want, got); diff != "" {
t.Errorf("Retrieve() mismatch (-want +got):\n%s", diff)
}
}


func absolutePath(t *testing.T, relativePath string) string {
t.Helper()
pth, err := filepath.Abs(relativePath)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
extensions:
opamp:
endpoint: "wss://example.com/v1/opamp"
remote_configuration_directory: ../globprovider/testdata/mergefunc
disable_tag_replacement: true
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
extensions:
opamp:
endpoint: "wss://example.com/v1/opamp"
remote_configuration_directory: ../globprovider/testdata/mergefunc
1 change: 1 addition & 0 deletions pkg/configprovider/providerutil/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
include ../../Makefile.Common
24 changes: 24 additions & 0 deletions pkg/configprovider/providerutil/go.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
module github.com/SumoLogic/sumologic-otel-collector/pkg/configprovider/providerutil

go 1.21.0

toolchain go1.22.3

require (
github.com/stretchr/testify v1.9.0
go.opentelemetry.io/collector/confmap v0.102.1
)

require (
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/go-viper/mapstructure/v2 v2.0.0-alpha.1 // indirect
github.com/knadh/koanf/maps v0.1.1 // indirect
github.com/knadh/koanf/providers/confmap v0.1.0 // indirect
github.com/knadh/koanf/v2 v2.1.1 // indirect
github.com/mitchellh/copystructure v1.2.0 // indirect
github.com/mitchellh/reflectwalk v1.0.2 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/zap v1.27.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)
30 changes: 30 additions & 0 deletions pkg/configprovider/providerutil/go.sum
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/go-viper/mapstructure/v2 v2.0.0-alpha.1 h1:TQcrn6Wq+sKGkpyPvppOz99zsMBaUOKXq6HSv655U1c=
github.com/go-viper/mapstructure/v2 v2.0.0-alpha.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
github.com/knadh/koanf/maps v0.1.1 h1:G5TjmUh2D7G2YWf5SQQqSiHRJEjaicvU0KpypqB3NIs=
github.com/knadh/koanf/maps v0.1.1/go.mod h1:npD/QZY3V6ghQDdcQzl1W4ICNVTkohC8E73eI2xW4yI=
github.com/knadh/koanf/providers/confmap v0.1.0 h1:gOkxhHkemwG4LezxxN8DMOFopOPghxRVp7JbIvdvqzU=
github.com/knadh/koanf/providers/confmap v0.1.0/go.mod h1:2uLhxQzJnyHKfxG927awZC7+fyHFdQkd697K4MdLnIU=
github.com/knadh/koanf/v2 v2.1.1 h1:/R8eXqasSTsmDCsAyYj+81Wteg8AqrV9CP6gvsTsOmM=
github.com/knadh/koanf/v2 v2.1.1/go.mod h1:4mnTRbZCK+ALuBXHZMjDfG9y714L7TykVnZkXbMU3Es=
github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw=
github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s=
github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ=
github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
go.opentelemetry.io/collector/confmap v0.102.1 h1:wZuH+d/P11Suz8wbp+xQCJ0BPE9m5pybtUe74c+rU7E=
go.opentelemetry.io/collector/confmap v0.102.1/go.mod h1:KgpS7UxH5rkd69CzAzlY2I1heH8Z7eNCZlHmwQBMxNg=
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8=
go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
Loading
Loading