Skip to content

Commit ae892cb

Browse files
authored
Merge pull request #13 from axoflow/chore/update-v0.143.0
Chore/update v0.143.0
2 parents 3e2d612 + 8dae18e commit ae892cb

File tree

7 files changed

+179
-196
lines changed

7 files changed

+179
-196
lines changed

config.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
"time"
1010

1111
"go.opentelemetry.io/collector/component"
12+
"go.opentelemetry.io/collector/config/configoptional"
1213
"go.opentelemetry.io/collector/config/configretry"
1314
"go.opentelemetry.io/collector/config/configtls"
1415
"go.opentelemetry.io/collector/exporter/exporterhelper"
@@ -69,7 +70,7 @@ type Config struct {
6970
KubernetesMetadata *KubernetesMetadata `mapstructure:"kubernetes_metadata,omitempty"`
7071

7172
configretry.BackOffConfig `mapstructure:"retry_on_failure"`
72-
QueueBatchConfig exporterhelper.QueueBatchConfig `mapstructure:"sending_queue"`
73+
QueueConfig configoptional.Optional[exporterhelper.QueueBatchConfig] `mapstructure:"sending_queue"`
7374
}
7475

7576
// Endpoint defines the address of the server to connect to.
@@ -89,7 +90,7 @@ var _ component.Config = (*Config)(nil)
8990

9091
// Validate checks if the configuration is valid
9192
func (config *Config) Validate() error {
92-
if err := config.QueueBatchConfig.Validate(); err != nil {
93+
if err := config.QueueConfig.Validate(); err != nil {
9394
return fmt.Errorf("queue settings has invalid configuration: %w", err)
9495
}
9596

config_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import (
1313
"github.com/stretchr/testify/assert"
1414
"github.com/stretchr/testify/require"
1515
"go.opentelemetry.io/collector/component"
16+
"go.opentelemetry.io/collector/config/configoptional"
1617
"go.opentelemetry.io/collector/config/configretry"
1718
"go.opentelemetry.io/collector/config/configtls"
1819
"go.opentelemetry.io/collector/confmap/confmaptest"
@@ -68,12 +69,12 @@ func TestLoadConfigNewExporter(t *testing.T) {
6869
RandomizationFactor: backoff.DefaultRandomizationFactor,
6970
Multiplier: backoff.DefaultMultiplier,
7071
},
71-
QueueBatchConfig: exporterhelper.QueueBatchConfig{
72-
Enabled: true,
72+
QueueConfig: configoptional.Some(exporterhelper.QueueBatchConfig{
7373
NumConsumers: 10,
7474
QueueSize: 1000,
7575
Sizer: exporterhelper.RequestSizerTypeRequests,
76-
},
76+
Batch: exporterhelper.NewDefaultQueueConfig().Batch,
77+
}),
7778
},
7879
},
7980
}
@@ -102,10 +103,9 @@ func TestConfigValidate(t *testing.T) {
102103
{
103104
desc: "QueueSettings are invalid",
104105
cfg: &Config{
105-
QueueBatchConfig: exporterhelper.QueueBatchConfig{
106+
QueueConfig: configoptional.Some(exporterhelper.QueueBatchConfig{
106107
QueueSize: -1,
107-
Enabled: true,
108-
},
108+
}),
109109
},
110110
err: fmt.Errorf("queue settings has invalid configuration"),
111111
},

exporter.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,10 @@ func (f *fluentforwardExporter) start(ctx context.Context, host component.Host)
6666

6767
func (f *fluentforwardExporter) stop(context.Context) (err error) {
6868
f.wg.Wait()
69-
return f.client.Disconnect()
69+
if f.client != nil {
70+
return f.client.Disconnect()
71+
}
72+
return nil
7073
}
7174

7275
// connectForward connects to the Fluent Forward endpoint and keep running otel even if the connection is failing

factory.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
"time"
99

1010
"go.opentelemetry.io/collector/component"
11+
"go.opentelemetry.io/collector/config/configoptional"
1112
"go.opentelemetry.io/collector/config/configretry"
1213
"go.opentelemetry.io/collector/config/configtls"
1314
"go.opentelemetry.io/collector/exporter"
@@ -55,8 +56,8 @@ func createDefaultConfig() component.Config {
5556
"level": true,
5657
"message": true,
5758
},
58-
BackOffConfig: configretry.NewDefaultBackOffConfig(),
59-
QueueBatchConfig: exporterhelper.NewDefaultQueueConfig(),
59+
BackOffConfig: configretry.NewDefaultBackOffConfig(),
60+
QueueConfig: configoptional.Some(exporterhelper.NewDefaultQueueConfig()),
6061
}
6162
}
6263

@@ -72,7 +73,7 @@ func createLogsExporter(ctx context.Context, set exporter.Settings, config compo
7273
// explicitly disable since we rely on net.Dialer timeout logic.
7374
exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}),
7475
exporterhelper.WithRetry(exporterConfig.BackOffConfig),
75-
exporterhelper.WithQueue(exporterConfig.QueueBatchConfig),
76+
exporterhelper.WithQueue(exporterConfig.QueueConfig),
7677
exporterhelper.WithStart(exp.start),
7778
exporterhelper.WithShutdown(exp.stop),
7879
)

factory_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111
"github.com/cenkalti/backoff/v4"
1212
"github.com/stretchr/testify/require"
1313
"go.opentelemetry.io/collector/component/componenttest"
14+
"go.opentelemetry.io/collector/config/configoptional"
1415
"go.opentelemetry.io/collector/config/configretry"
1516
"go.opentelemetry.io/collector/config/configtls"
1617
"go.opentelemetry.io/collector/exporter/exporterhelper"
@@ -72,11 +73,10 @@ func TestNewExporterFullConfig(t *testing.T) {
7273
RandomizationFactor: backoff.DefaultRandomizationFactor,
7374
Multiplier: backoff.DefaultMultiplier,
7475
},
75-
QueueBatchConfig: exporterhelper.QueueBatchConfig{
76-
Enabled: true,
76+
QueueConfig: configoptional.Some(exporterhelper.QueueBatchConfig{
7777
NumConsumers: 2,
7878
QueueSize: 10,
79-
},
79+
}),
8080
}
8181
exp := newExporter(config, componenttest.NewNopTelemetrySettings())
8282
require.NotNil(t, exp)

go.mod

Lines changed: 49 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -5,75 +5,76 @@ go 1.24.0
55
require (
66
github.com/IBM/fluent-forward-go v0.3.0
77
github.com/cenkalti/backoff/v4 v4.3.0
8-
github.com/stretchr/testify v1.10.0
9-
go.opentelemetry.io/collector/component v1.35.0
10-
go.opentelemetry.io/collector/component/componenttest v0.129.0
11-
go.opentelemetry.io/collector/config/configretry v1.35.0
8+
github.com/stretchr/testify v1.11.1
9+
go.opentelemetry.io/collector/component v1.49.0
10+
go.opentelemetry.io/collector/component/componenttest v0.143.0
11+
go.opentelemetry.io/collector/config/configretry v1.49.0
1212
go.opentelemetry.io/collector/config/configtls v1.31.0
13-
go.opentelemetry.io/collector/confmap v1.35.0
14-
go.opentelemetry.io/collector/confmap/xconfmap v0.129.0
15-
go.opentelemetry.io/collector/exporter v0.129.0
16-
go.opentelemetry.io/collector/exporter/exportertest v0.129.0
17-
go.opentelemetry.io/collector/pdata v1.35.0
13+
go.opentelemetry.io/collector/confmap v1.49.0
14+
go.opentelemetry.io/collector/confmap/xconfmap v0.143.0
15+
go.opentelemetry.io/collector/exporter v1.49.0
16+
go.opentelemetry.io/collector/exporter/exporterhelper v0.143.0
17+
go.opentelemetry.io/collector/exporter/exportertest v0.143.0
18+
go.opentelemetry.io/collector/pdata v1.49.0
1819
go.uber.org/goleak v1.3.0
19-
go.uber.org/zap v1.27.0
20+
go.uber.org/zap v1.27.1
2021
)
2122

2223
require (
23-
github.com/cenkalti/backoff/v5 v5.0.2 // indirect
24+
github.com/cespare/xxhash/v2 v2.3.0 // indirect
25+
go.opentelemetry.io/collector/config/configoptional v1.49.0 // indirect
26+
go.yaml.in/yaml/v3 v3.0.4 // indirect
27+
golang.org/x/tools v0.38.0 // indirect
28+
)
29+
30+
require (
31+
github.com/cenkalti/backoff/v5 v5.0.3 // indirect
2432
github.com/davecgh/go-spew v1.1.1 // indirect
2533
github.com/fsnotify/fsnotify v1.9.0 // indirect
26-
github.com/go-logr/logr v1.4.2 // indirect
34+
github.com/go-logr/logr v1.4.3 // indirect
2735
github.com/go-logr/stdr v1.2.2 // indirect
28-
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
36+
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
2937
github.com/gobwas/glob v0.2.3 // indirect
30-
github.com/gogo/protobuf v1.3.2 // indirect
3138
github.com/google/uuid v1.6.0 // indirect
3239
github.com/gorilla/websocket v1.4.2 // indirect
33-
github.com/hashicorp/go-version v1.7.0 // indirect
40+
github.com/hashicorp/go-version v1.8.0 // indirect
3441
github.com/json-iterator/go v1.1.12 // indirect
3542
github.com/knadh/koanf/maps v0.1.2 // indirect
3643
github.com/knadh/koanf/providers/confmap v1.0.0 // indirect
37-
github.com/knadh/koanf/v2 v2.2.1 // indirect
44+
github.com/knadh/koanf/v2 v2.3.0 // indirect
3845
github.com/mitchellh/copystructure v1.2.0 // indirect
3946
github.com/mitchellh/reflectwalk v1.0.2 // indirect
4047
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
41-
github.com/modern-go/reflect2 v1.0.2 // indirect
48+
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
4249
github.com/philhofer/fwd v1.1.2 // indirect
4350
github.com/pmezard/go-difflib v1.0.0 // indirect
4451
github.com/tinylib/msgp v1.1.9 // indirect
45-
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
46-
go.opentelemetry.io/collector/client v1.35.0 // indirect
52+
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
53+
go.opentelemetry.io/collector/client v1.49.0 // indirect
4754
go.opentelemetry.io/collector/config/configopaque v1.31.0 // indirect
48-
go.opentelemetry.io/collector/consumer v1.35.0 // indirect
49-
go.opentelemetry.io/collector/consumer/consumererror v0.129.0 // indirect
50-
go.opentelemetry.io/collector/consumer/consumertest v0.129.0 // indirect
51-
go.opentelemetry.io/collector/consumer/xconsumer v0.129.0 // indirect
52-
go.opentelemetry.io/collector/exporter/xexporter v0.129.0 // indirect
53-
go.opentelemetry.io/collector/extension v1.35.0 // indirect
54-
go.opentelemetry.io/collector/extension/xextension v0.129.0 // indirect
55-
go.opentelemetry.io/collector/featuregate v1.35.0 // indirect
56-
go.opentelemetry.io/collector/internal/telemetry v0.129.0 // indirect
57-
go.opentelemetry.io/collector/pdata/pprofile v0.129.0 // indirect
58-
go.opentelemetry.io/collector/pdata/xpdata v0.129.0 // indirect
59-
go.opentelemetry.io/collector/pipeline v0.129.0 // indirect
60-
go.opentelemetry.io/collector/receiver v1.35.0 // indirect
61-
go.opentelemetry.io/collector/receiver/receivertest v0.129.0 // indirect
62-
go.opentelemetry.io/collector/receiver/xreceiver v0.129.0 // indirect
63-
go.opentelemetry.io/contrib/bridges/otelzap v0.11.0 // indirect
64-
go.opentelemetry.io/otel v1.36.0 // indirect
65-
go.opentelemetry.io/otel/log v0.12.2 // indirect
66-
go.opentelemetry.io/otel/metric v1.36.0 // indirect
67-
go.opentelemetry.io/otel/sdk v1.36.0 // indirect
68-
go.opentelemetry.io/otel/sdk/metric v1.36.0 // indirect
69-
go.opentelemetry.io/otel/trace v1.36.0 // indirect
55+
go.opentelemetry.io/collector/consumer v1.49.0 // indirect
56+
go.opentelemetry.io/collector/consumer/consumererror v0.143.0 // indirect
57+
go.opentelemetry.io/collector/consumer/consumertest v0.143.0 // indirect
58+
go.opentelemetry.io/collector/consumer/xconsumer v0.143.0 // indirect
59+
go.opentelemetry.io/collector/exporter/xexporter v0.143.0 // indirect
60+
go.opentelemetry.io/collector/extension v1.49.0 // indirect
61+
go.opentelemetry.io/collector/extension/xextension v0.143.0 // indirect
62+
go.opentelemetry.io/collector/featuregate v1.49.0 // indirect
63+
go.opentelemetry.io/collector/pdata/pprofile v0.143.0 // indirect
64+
go.opentelemetry.io/collector/pdata/xpdata v0.143.0 // indirect
65+
go.opentelemetry.io/collector/pipeline v1.49.0 // indirect
66+
go.opentelemetry.io/collector/receiver v1.49.0 // indirect
67+
go.opentelemetry.io/collector/receiver/receivertest v0.143.0 // indirect
68+
go.opentelemetry.io/collector/receiver/xreceiver v0.143.0 // indirect
69+
go.opentelemetry.io/otel v1.39.0 // indirect
70+
go.opentelemetry.io/otel/metric v1.39.0 // indirect
71+
go.opentelemetry.io/otel/sdk v1.39.0 // indirect
72+
go.opentelemetry.io/otel/sdk/metric v1.39.0 // indirect
73+
go.opentelemetry.io/otel/trace v1.39.0 // indirect
7074
go.uber.org/multierr v1.11.0 // indirect
71-
golang.org/x/net v0.39.0 // indirect
72-
golang.org/x/sys v0.33.0 // indirect
73-
golang.org/x/text v0.24.0 // indirect
74-
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
75-
google.golang.org/grpc v1.73.0 // indirect
76-
google.golang.org/protobuf v1.36.6 // indirect
75+
golang.org/x/sys v0.39.0 // indirect
76+
google.golang.org/genproto/googleapis/rpc v0.0.0-20251029180050-ab9386a59fda // indirect
77+
google.golang.org/grpc v1.78.0 // indirect
78+
google.golang.org/protobuf v1.36.11 // indirect
7779
gopkg.in/yaml.v3 v3.0.1 // indirect
78-
sigs.k8s.io/yaml v1.4.0 // indirect
7980
)

0 commit comments

Comments
 (0)