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

Update Beats to the current Sarama fork #41655

Open
wants to merge 29 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
5364073
resolve conflict
khushijain21 Nov 18, 2024
cc3530e
Merge branch 'main' into kafka
khushijain21 Nov 19, 2024
291d008
point to elastic sarama fork directly
khushijain21 Nov 20, 2024
bcfbf51
remove dependency on shopify
khushijain21 Nov 20, 2024
37e83bb
linting issues
khushijain21 Nov 20, 2024
e1579e6
linint issues 2
khushijain21 Nov 20, 2024
e1396ac
Merge branch 'main' into kafka
khushijain21 Nov 20, 2024
05989d1
fixed wrapped errors lining
khushijain21 Nov 21, 2024
7b68d68
CI failures
khushijain21 Nov 21, 2024
550613a
ignore error messages in integration tests
khushijain21 Nov 21, 2024
85c0cd7
import paths
khushijain21 Nov 21, 2024
12d7be5
correct elastic import path
khushijain21 Nov 21, 2024
8b3a6b5
import path
khushijain21 Nov 21, 2024
76b93ad
add next valid versions
khushijain21 Nov 21, 2024
610d4d1
revert
khushijain21 Nov 21, 2024
7b94368
revert
khushijain21 Nov 21, 2024
9a446c8
revert
khushijain21 Nov 21, 2024
55552b8
fix failing intergation tests
khushijain21 Nov 22, 2024
93b7c07
fix failing test
khushijain21 Nov 22, 2024
b257dc7
Merge remote-tracking branch 'upstream/main' into kafka
khushijain21 Nov 22, 2024
3c6ea31
upgrade kafka version for testing
khushijain21 Nov 22, 2024
fc94087
using 2.2.2 kafka version
khushijain21 Nov 22, 2024
7db64c9
startConsumergroup
khushijain21 Nov 22, 2024
e7deb67
consumergroup
khushijain21 Nov 22, 2024
ba7e70c
add IBM/sarama methods for consumerinteg
khushijain21 Nov 22, 2024
b812afe
Merge remote-tracking branch 'upstream/main' into kafka
khushijain21 Nov 22, 2024
675a960
linter errors
khushijain21 Nov 22, 2024
2377aed
consumer group with IBM/sarama
khushijain21 Nov 25, 2024
c629f29
Merge remote-tracking branch 'upstream/main' into kafka
khushijain21 Nov 25, 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
120 changes: 78 additions & 42 deletions NOTICE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2646,6 +2646,40 @@ Contents of probable licence file $GOMODCACHE/github.com/!azure/go-autorest/auto
limitations under the License.


--------------------------------------------------------------------------------
Dependency : github.com/elastic/sarama
Version: v1.19.1-0.20241118045140-603e70e982ce
Licence type (autodetected): MIT
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/elastic/[email protected]/LICENSE.md:

# MIT License

Copyright (c) 2013 Shopify

Copyright (c) 2023 IBM Corporation

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


--------------------------------------------------------------------------------
Dependency : github.com/Microsoft/go-winio
Version: v0.6.2
Expand Down Expand Up @@ -2745,36 +2779,6 @@ OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.


--------------------------------------------------------------------------------
Dependency : github.com/elastic/sarama
Version: v1.19.1-0.20220310193331-ebc2b0d8eef3
Licence type (autodetected): MIT
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/elastic/[email protected]/LICENSE:

Copyright (c) 2013 Shopify

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


--------------------------------------------------------------------------------
Dependency : github.com/StackExchange/wmi
Version: v1.2.1
Expand Down Expand Up @@ -12880,11 +12884,11 @@ SOFTWARE.

--------------------------------------------------------------------------------
Dependency : github.com/eapache/go-resiliency
Version: v1.2.0
Version: v1.7.0
Licence type (autodetected): MIT
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/eapache/go-resiliency@v1.2.0/LICENSE:
Contents of probable licence file $GOMODCACHE/github.com/eapache/go-resiliency@v1.7.0/LICENSE:

The MIT License (MIT)

Expand Down Expand Up @@ -21905,11 +21909,11 @@ THE SOFTWARE.

--------------------------------------------------------------------------------
Dependency : github.com/pierrec/lz4/v4
Version: v4.1.18
Version: v4.1.21
Licence type (autodetected): BSD-3-Clause
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/pierrec/lz4/[email protected].18/LICENSE:
Contents of probable licence file $GOMODCACHE/github.com/pierrec/lz4/[email protected].21/LICENSE:

Copyright (c) 2015, Pierre Curto
All rights reserved.
Expand Down Expand Up @@ -32858,6 +32862,36 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.


--------------------------------------------------------------------------------
Dependency : github.com/Shopify/sarama
Version: v1.27.0
Licence type (autodetected): MIT
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/!shopify/[email protected]/LICENSE:

Copyright (c) 2013 Shopify

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


--------------------------------------------------------------------------------
Dependency : github.com/Shopify/toxiproxy
Version: v2.1.4+incompatible
Expand Down Expand Up @@ -39130,11 +39164,11 @@ Contents of probable licence file $GOMODCACHE/github.com/docker/[email protected].

--------------------------------------------------------------------------------
Dependency : github.com/eapache/go-xerial-snappy
Version: v0.0.0-20180814174437-776d5712da21
Version: v0.0.0-20230731223053-c322873962e3
Licence type (autodetected): MIT
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/eapache/[email protected]20180814174437-776d5712da21/LICENSE:
Contents of probable licence file $GOMODCACHE/github.com/eapache/[email protected]20230731223053-c322873962e3/LICENSE:

The MIT License (MIT)

Expand Down Expand Up @@ -45873,11 +45907,13 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice

--------------------------------------------------------------------------------
Dependency : github.com/hashicorp/go-uuid
Version: v1.0.2
Version: v1.0.3
Licence type (autodetected): MPL-2.0
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/hashicorp/[email protected]/LICENSE:
Contents of probable licence file $GOMODCACHE/github.com/hashicorp/[email protected]/LICENSE:

Copyright © 2015-2022 HashiCorp, Inc.

Mozilla Public License, version 2.0

Expand Down Expand Up @@ -47312,11 +47348,11 @@ Contents of probable licence file $GOMODCACHE/github.com/jcmturner/dnsutils/v2@v

--------------------------------------------------------------------------------
Dependency : github.com/jcmturner/gofork
Version: v1.0.0
Version: v1.7.6
Licence type (autodetected): BSD-3-Clause
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/jcmturner/gofork@v1.0.0/LICENSE:
Contents of probable licence file $GOMODCACHE/github.com/jcmturner/gofork@v1.7.6/LICENSE:

Copyright (c) 2009 The Go Authors. All rights reserved.

Expand Down Expand Up @@ -47560,11 +47596,11 @@ Contents of probable licence file $GOMODCACHE/github.com/jcmturner/goidentity/v6

--------------------------------------------------------------------------------
Dependency : github.com/jcmturner/gokrb5/v8
Version: v8.4.2
Version: v8.4.4
Licence type (autodetected): Apache-2.0
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/jcmturner/gokrb5/[email protected].2/LICENSE:
Contents of probable licence file $GOMODCACHE/github.com/jcmturner/gokrb5/[email protected].4/LICENSE:

Apache License
Version 2.0, January 2004
Expand Down
2 changes: 1 addition & 1 deletion filebeat/input/kafka/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import (
"fmt"
"time"

"github.com/Shopify/sarama"
"github.com/IBM/sarama"

"github.com/elastic/beats/v7/libbeat/common/cfgwarn"
"github.com/elastic/beats/v7/libbeat/common/kafka"
Expand Down
2 changes: 1 addition & 1 deletion filebeat/input/kafka/input.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ import (
"github.com/elastic/beats/v7/libbeat/common/atomic"
"github.com/elastic/elastic-agent-libs/mapstr"

"github.com/Shopify/sarama"
"github.com/IBM/sarama"

input "github.com/elastic/beats/v7/filebeat/input/v2"
"github.com/elastic/beats/v7/libbeat/beat"
Expand Down
2 changes: 1 addition & 1 deletion filebeat/input/kafka/kafka_integration_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ import (
"github.com/elastic/elastic-agent-libs/logp"
"github.com/elastic/elastic-agent-libs/mapstr"

"github.com/Shopify/sarama"
"github.com/IBM/sarama"
"github.com/stretchr/testify/assert"

"github.com/elastic/beats/v7/libbeat/beat"
Expand Down
17 changes: 9 additions & 8 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ require (
github.com/Microsoft/go-winio v0.6.2
github.com/PaesslerAG/gval v1.2.2
github.com/PaesslerAG/jsonpath v0.1.1
github.com/Shopify/sarama v1.27.0
github.com/Shopify/sarama v1.27.0 // indirect
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where is the indirect dependency coming from here? (Do we pick up both versions in the actual build?)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The output of go mod why github.com/Shopify/sarama says:

# github.com/Shopify/sarama
github.com/elastic/beats/v7/metricbeat/module/kafka/consumergroup
github.com/elastic/beats/v7/metricbeat/module/kafka/consumergroup.test
github.com/bsm/sarama-cluster
github.com/Shopify/sarama

The sarama-cluster package is only used in a single integration test.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I remember correctly sarama cluster used to be necessary before sarama properly supported consumer groups, which has been the case for a long time, so we can get rid of this. It says as much in https://github.com/bsm/sarama-cluster where the repository is archived for this reason.

github.com/StackExchange/wmi v1.2.1
github.com/akavel/rsrc v0.8.0 // indirect
github.com/apoydence/eachers v0.0.0-20181020210610-23942921fe77 // indirect
Expand Down Expand Up @@ -60,7 +60,7 @@ require (
github.com/dop251/goja v0.0.0-20200831102558-9af81ddcf0e1
github.com/dop251/goja_nodejs v0.0.0-20171011081505-adff31b136e6
github.com/dustin/go-humanize v1.0.1
github.com/eapache/go-resiliency v1.2.0
github.com/eapache/go-resiliency v1.7.0
github.com/eclipse/paho.mqtt.golang v1.3.5
github.com/elastic/elastic-agent-client/v7 v7.15.0
github.com/elastic/go-concert v0.3.0
Expand Down Expand Up @@ -175,6 +175,7 @@ require (
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.4.0
github.com/Azure/azure-storage-blob-go v0.15.0
github.com/Azure/go-autorest/autorest/adal v0.9.24
github.com/IBM/sarama v1.43.3
github.com/aerospike/aerospike-client-go/v7 v7.7.1
github.com/apache/arrow/go/v14 v14.0.2
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.12
Expand Down Expand Up @@ -212,7 +213,7 @@ require (
github.com/icholy/digest v0.1.22
github.com/meraki/dashboard-api-go/v3 v3.0.9
github.com/otiai10/copy v1.12.0
github.com/pierrec/lz4/v4 v4.1.18
github.com/pierrec/lz4/v4 v4.1.21
github.com/pkg/xattr v0.4.9
github.com/prometheus/prometheus v0.54.1
github.com/shirou/gopsutil/v3 v3.22.10
Expand Down Expand Up @@ -281,7 +282,7 @@ require (
github.com/distribution/reference v0.6.0 // indirect
github.com/dnephin/pflag v1.0.7 // indirect
github.com/docker/go-metrics v0.0.1 // indirect
github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21 // indirect
github.com/eapache/go-xerial-snappy v0.0.0-20230731223053-c322873962e3 // indirect
github.com/eapache/queue v1.1.0 // indirect
github.com/elastic/elastic-transport-go/v8 v8.6.0 // indirect
github.com/elastic/go-windows v1.0.2 // indirect
Expand Down Expand Up @@ -320,14 +321,14 @@ require (
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/hashicorp/go-rootcerts v1.0.2 // indirect
github.com/hashicorp/go-uuid v1.0.2 // indirect
github.com/hashicorp/go-uuid v1.0.3 // indirect
github.com/hashicorp/go-version v1.2.0 // indirect
github.com/imdario/mergo v0.3.16 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/jcmturner/aescts/v2 v2.0.0 // indirect
github.com/jcmturner/dnsutils/v2 v2.0.0 // indirect
github.com/jcmturner/gofork v1.0.0 // indirect
github.com/jcmturner/gokrb5/v8 v8.4.2 // indirect
github.com/jcmturner/gofork v1.7.6 // indirect
github.com/jcmturner/gokrb5/v8 v8.4.4 // indirect
github.com/jcmturner/rpc/v2 v2.0.3 // indirect
github.com/jmespath/go-jmespath v0.4.0 // indirect
github.com/josharian/intern v1.0.0 // indirect
Expand Down Expand Up @@ -415,7 +416,7 @@ require (
replace (
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/consumption/armconsumption => github.com/elastic/azure-sdk-for-go/sdk/resourcemanager/consumption/armconsumption v1.1.0-elastic

github.com/Shopify/sarama => github.com/elastic/sarama v1.19.1-0.20220310193331-ebc2b0d8eef3
github.com/IBM/sarama => github.com/elastic/sarama v1.19.1-0.20241118045140-603e70e982ce
github.com/apoydence/eachers => github.com/poy/eachers v0.0.0-20181020210610-23942921fe77 //indirect, see https://github.com/elastic/beats/pull/29780 for details.
github.com/dop251/goja => github.com/elastic/goja v0.0.0-20190128172624-dd2ac4456e20
github.com/fsnotify/fsevents => github.com/elastic/fsevents v0.0.0-20181029231046-e1d381a4d270
Expand Down
Loading
Loading