暂无描述

Dominic Evans c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
.github 6fb86a44d5 Add stale probot (#1609) 4 年之前
examples 8b72385c90 adds a note about consumer groups Consume method 4 年之前
mocks 88b0e98974 removes unused fields/methods 4 年之前
tools 8a56b725ac enables goimports lint 4 年之前
vagrant b1c7763921 fix: use modern kafka server.properties in vagrant 4 年之前
.gitignore 151daaac97 Addressing feeback 6 年之前
.golangci.yml e4913aef83 enables varcheck 4 年之前
CHANGELOG.md 5f7121b03e Add changelog for 1.26.1 4 年之前
LICENSE 8da9fa72b8 Technically Shopify owns the repo 6 年之前
Makefile b8c5f7cfe1 Add GitHub Actions workflows, use golangci-lint 4 年之前
README.md 0adc8d5a15 Add support for kafka 2.4.0 5 年之前
Vagrantfile b8c5f7cfe1 Add GitHub Actions workflows, use golangci-lint 4 年之前
acl_bindings.go 29d30a3c4c Refactor misspelled word Resouce to Resource 5 年之前
acl_create_request.go 3328055d57 another pull request to please lint gods 5 年之前
acl_create_request_test.go 29d30a3c4c Refactor misspelled word Resouce to Resource 5 年之前
acl_create_response.go 3328055d57 another pull request to please lint gods 5 年之前
acl_create_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 年之前
acl_delete_request.go 3328055d57 another pull request to please lint gods 5 年之前
acl_delete_request_test.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest 5 年之前
acl_delete_response.go 6b5b79ff65 enables unconver/unused 4 年之前
acl_delete_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 年之前
acl_describe_request.go 3328055d57 another pull request to please lint gods 5 年之前
acl_describe_request_test.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest 5 年之前
acl_describe_response.go 6b5b79ff65 enables unconver/unused 4 年之前
acl_describe_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 年之前
acl_filter.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest 5 年之前
acl_types.go 483263c182 using iota for constants and some style fixes 5 年之前
add_offsets_to_txn_request.go 3328055d57 another pull request to please lint gods 5 年之前
add_offsets_to_txn_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
add_offsets_to_txn_response.go 3328055d57 another pull request to please lint gods 5 年之前
add_offsets_to_txn_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
add_partitions_to_txn_request.go 3328055d57 another pull request to please lint gods 5 年之前
add_partitions_to_txn_request_test.go 07ff436a6d Fix linter errors 4 年之前
add_partitions_to_txn_response.go 3328055d57 another pull request to please lint gods 5 年之前
add_partitions_to_txn_response_test.go 07ff436a6d Fix linter errors 4 年之前
admin.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 年之前
admin_test.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 年之前
alter_configs_request.go 3328055d57 another pull request to please lint gods 5 年之前
alter_configs_request_test.go 07ff436a6d Fix linter errors 4 年之前
alter_configs_response.go 3328055d57 another pull request to please lint gods 5 年之前
alter_configs_response_test.go 07ff436a6d Fix linter errors 4 年之前
api_versions_request.go 3328055d57 another pull request to please lint gods 5 年之前
api_versions_request_test.go 574371b50a removes var when assigning a value immediately 4 年之前
api_versions_response.go 3328055d57 another pull request to please lint gods 5 年之前
api_versions_response_test.go 574371b50a removes var when assigning a value immediately 4 年之前
async_producer.go 574371b50a removes var when assigning a value immediately 4 年之前
async_producer_test.go 32082edf2b tests: remove unused testLogger{} 4 年之前
balance_strategy.go 88b0e98974 removes unused fields/methods 4 年之前
balance_strategy_test.go f6fb4afcdd simple compare statement 4 年之前
broker.go ca7391280e Fix memory leak when Broker.Open and Broker.Close called repeatedly 4 年之前
broker_test.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
client.go 38f81f8298 Updated "retrying" log message when BackoffFunc implemented 4 年之前
client_test.go e5ac353cdd fix: remove use of t.testing.FailNow() inside goroutine 4 年之前
client_tls_test.go 07ff436a6d Fix linter errors 4 年之前
compress.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
config.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 年之前
config_resource_type.go fb8b9b5a10 fix: use the broker for any admin on BrokerConfig 4 年之前
config_test.go 07ff436a6d Fix linter errors 4 年之前
consumer.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 年之前
consumer_group.go 8b72385c90 adds a note about consumer groups Consume method 4 年之前
consumer_group_members.go 12fa6736bd fixed some typo and added some comments 6 年之前
consumer_group_members_test.go cecb3d9807 Formating all files with gofmt -s 7 年之前
consumer_group_test.go 8b72385c90 adds a note about consumer groups Consume method 4 年之前
consumer_metadata_request.go 12fa6736bd fixed some typo and added some comments 6 年之前
consumer_metadata_request_test.go a5a9b835af refactor ConsumerMetadataRequest/Response to FindCoordinatorRequest/Response 7 年之前
consumer_metadata_response.go 3006055aad simple typo fixes in consumer metadata response file 5 年之前
consumer_metadata_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" 5 年之前
consumer_test.go 88b0e98974 removes unused fields/methods 4 年之前
control_record.go 3328055d57 another pull request to please lint gods 5 年之前
control_record_test.go 57215a08ac midway on consumer test 5 年之前
crc32_field.go 47ae433aa8 Reuse lengthFields 5 年之前
create_partitions_request.go 7957e72eca factor out getStringLength, use putArrayLength 7 年之前
create_partitions_request_test.go 07ff436a6d Fix linter errors 4 年之前
create_partitions_response.go ec2cbc3814 Satisfy the error interface in create responses 5 年之前
create_partitions_response_test.go 07ff436a6d Fix linter errors 4 年之前
create_topics_request.go b5ace411a0 add CreateTopicsRequest/Response 7 年之前
create_topics_request_test.go 07ff436a6d Fix linter errors 4 年之前
create_topics_response.go ec2cbc3814 Satisfy the error interface in create responses 5 年之前
create_topics_response_test.go 07ff436a6d Fix linter errors 4 年之前
decompress.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
delete_groups_request.go 0f1c3e9b87 Add support for DeleteGroups 6 年之前
delete_groups_request_test.go 0f1c3e9b87 Add support for DeleteGroups 6 年之前
delete_groups_response.go 7d531e2557 Use native time type for ThrottleTime 6 年之前
delete_groups_response_test.go 7d531e2557 Use native time type for ThrottleTime 6 年之前
delete_records_request.go 76a6b90ec2 Add DeleteRecords operation to Broker 6 年之前
delete_records_request_test.go 76a6b90ec2 Add DeleteRecords operation to Broker 6 年之前
delete_records_response.go 76a6b90ec2 Add DeleteRecords operation to Broker 6 年之前
delete_records_response_test.go 76a6b90ec2 Add DeleteRecords operation to Broker 6 年之前
delete_topics_request.go 796e8cc60f Added support for DeleteTopicsRequest V1 6 年之前
delete_topics_request_test.go 796e8cc60f Added support for DeleteTopicsRequest V1 6 年之前
delete_topics_response.go 620549d3ed add DeleteTopicsRequest/Response 7 年之前
delete_topics_response_test.go 620549d3ed add DeleteTopicsRequest/Response 7 年之前
describe_configs_request.go 11800fbad1 Set correct Kafka version for DescribeConfigsRequest v1 5 年之前
describe_configs_request_test.go 574371b50a removes var when assigning a value immediately 4 年之前
describe_configs_response.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 年之前
describe_configs_response_test.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 年之前
describe_groups_request.go 90a4cc632e Fix race in broker version check 8 年之前
describe_groups_request_test.go 1621c4959a Add tests for all new request types. 9 年之前
describe_groups_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 年之前
describe_groups_response_test.go 37654da7e1 Add support for decoding versioned responses 8 年之前
describe_log_dirs_request.go c3d174d3a2 Fix request decode 5 年之前
describe_log_dirs_request_test.go 07ff436a6d Fix linter errors 4 年之前
describe_log_dirs_response.go 91ff84ae8d Use KError for ErrorCodes 5 年之前
describe_log_dirs_response_test.go 07ff436a6d Fix linter errors 4 年之前
dev.yml 6bd8a32e60 Run CI actions on pull request 4 年之前
encoder_decoder.go 124e7c647e Expose producer metrics with go-metrics 8 年之前
end_txn_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
end_txn_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
end_txn_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
end_txn_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
errors.go fbe15c34cf Handle a few missed protocol errors and add the new one 5 年之前
fetch_request.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 年之前
fetch_request_test.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 年之前
fetch_response.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 年之前
fetch_response_test.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 年之前
find_coordinator_request.go 483263c182 using iota for constants and some style fixes 5 年之前
find_coordinator_request_test.go a5a9b835af refactor ConsumerMetadataRequest/Response to FindCoordinatorRequest/Response 7 年之前
find_coordinator_response.go 5a23d49f7a remove rack from FindCoordinatorResponse and hardcode Broker-decode/encode version to 0 6 年之前
find_coordinator_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" 5 年之前
functional_client_test.go e931cc00ed Stop test if client.Coordinator fails somehow 8 年之前
functional_consumer_group_test.go a318f6ee7d CI test fixes 6 年之前
functional_consumer_test.go 37faed7ffc enables zstd bumping the right things 4 年之前
functional_offset_manager_test.go ccab789d44 OffsetManager: match upstream mark/next behaviour 8 年之前
functional_producer_test.go 2db8d8aea2 Add requests-in-flight metric 4 年之前
functional_test.go 171edfcb2e tests: remove unused proxyClient and Proxies variables 4 年之前
go.mod c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
go.sum c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
gssapi_kerberos.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
heartbeat_request.go 90a4cc632e Fix race in broker version check 8 年之前
heartbeat_request_test.go 574371b50a removes var when assigning a value immediately 4 年之前
heartbeat_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 年之前
heartbeat_response_test.go 574371b50a removes var when assigning a value immediately 4 年之前
init_producer_id_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
init_producer_id_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
init_producer_id_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
init_producer_id_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
join_group_request.go e1b85f3400 Added versioning for join-group requests and responses 6 年之前
join_group_request_test.go e1b85f3400 Added versioning for join-group requests and responses 6 年之前
join_group_response.go e1b85f3400 Added versioning for join-group requests and responses 6 年之前
join_group_response_test.go e1b85f3400 Added versioning for join-group requests and responses 6 年之前
kerberos_client.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
kerberos_client_test.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
leave_group_request.go 90a4cc632e Fix race in broker version check 8 年之前
leave_group_request_test.go 574371b50a removes var when assigning a value immediately 4 年之前
leave_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 年之前
leave_group_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" 5 年之前
length_field.go 47ae433aa8 Reuse lengthFields 5 年之前
list_groups_request.go 90a4cc632e Fix race in broker version check 8 年之前
list_groups_request_test.go 1621c4959a Add tests for all new request types. 9 年之前
list_groups_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 年之前
list_groups_response_test.go 37654da7e1 Add support for decoding versioned responses 8 年之前
message.go 07ff436a6d Fix linter errors 4 年之前
message_set.go 47ae433aa8 Reuse lengthFields 5 年之前
message_test.go 7d77064a4d Revert "Add workaround for an empty zstd message" 6 年之前
metadata_request.go c547697705 bug: V5 MetadataRequest nullable topics array 5 年之前
metadata_request_test.go ac7342c248 fix tests 4 年之前
metadata_response.go 07ff436a6d Fix linter errors 4 年之前
metadata_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" 5 年之前
metrics.go 82be3b4da9 Unregister all broker metrics on broker stop 6 年之前
metrics_test.go 2db8d8aea2 Add requests-in-flight metric 4 年之前
mockbroker.go 6709a950d8 enables structcheck and others 4 年之前
mockkerberos.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 年之前
mockresponses.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 年之前
offset_commit_request.go c8f961f633 Address a few staticcheck suggestions 5 年之前
offset_commit_request_test.go 3f16fb0e7a Add support for newer OffsetCommit request/response 6 年之前
offset_commit_response.go 3f16fb0e7a Add support for newer OffsetCommit request/response 6 年之前
offset_commit_response_test.go 3f16fb0e7a Add support for newer OffsetCommit request/response 6 年之前
offset_fetch_request.go 6c7918ef5a Added OffsetFetch support up to v5 6 年之前
offset_fetch_request_test.go 6c7918ef5a Added OffsetFetch support up to v5 6 年之前
offset_fetch_response.go 6c7918ef5a Added OffsetFetch support up to v5 6 年之前
offset_fetch_response_test.go 6c7918ef5a Added OffsetFetch support up to v5 6 年之前
offset_manager.go 07ff436a6d Fix linter errors 4 年之前
offset_manager_test.go 07ff436a6d Fix linter errors 4 年之前
offset_request.go 6b5b79ff65 enables unconver/unused 4 年之前
offset_request_test.go 8869e903fa Add a getter for replica ID 6 年之前
offset_response.go e42dc76c4e Add missing Kafka versions 6 年之前
offset_response_test.go d65b3fd46b Support ListOffsetRequest v1 [KIP-79] 8 年之前
packet_decoder.go 4ed1ab2ab8 Provide peekInt8 to reduce allocations 5 年之前
packet_encoder.go b3f149d4d2 add create partitions 7 年之前
partitioner.go a74fb772b5 update name of partitioner option so it makes more sense 6 年之前
partitioner_test.go 9b2c4d6e2c Make Partitioner.RequiresConsistency vary per-message 6 年之前
prep_encoder.go b3f149d4d2 add create partitions 7 年之前
produce_request.go 37faed7ffc enables zstd bumping the right things 4 年之前
produce_request_test.go 7ad9a62d7d Fix TestProduceRequest 6 年之前
produce_response.go 1c8ddd93de produce_response.go: remove unused functions 4 年之前
produce_response_test.go 37faed7ffc enables zstd bumping the right things 4 年之前
produce_set.go 37faed7ffc enables zstd bumping the right things 4 年之前
produce_set_test.go 07ff436a6d Fix linter errors 4 年之前
real_decoder.go 88b0e98974 removes unused fields/methods 4 年之前
real_encoder.go b3f149d4d2 add create partitions 7 年之前
record.go b68420a29b control record + isTransactional bit parsing 5 年之前
record_batch.go 47ae433aa8 Reuse lengthFields 5 年之前
record_test.go 780ea152be Fix gzip compression encode/decode test 6 年之前
records.go 88b0e98974 removes unused fields/methods 4 年之前
records_test.go 6b86562f5c ut transactional flag 5 年之前
request.go 1799d6c8db fix: fill in the Fetch{Request,Response} protocol 4 年之前
request_test.go bf8cdb7bd1 tests: remove unused testRequestBody{} and its functions 4 年之前
response_header.go 55578535cf Add SASL SCRAM-SHA-512 and SCRAM-SHA-256 mechanismes 5 年之前
response_header_test.go 893044d278 Fix Golint errors, except for all the missing comments. 11 年之前
sarama.go 2db8d8aea2 Add requests-in-flight metric 4 年之前
sasl_authenticate_request.go 56ffac20e5 Clean up error handling 5 年之前
sasl_authenticate_request_test.go 574371b50a removes var when assigning a value immediately 4 年之前
sasl_authenticate_response.go 56ffac20e5 Clean up error handling 5 年之前
sasl_authenticate_response_test.go 07ff436a6d Fix linter errors 4 年之前
sasl_handshake_request.go f5b3e0ed01 Implement SASL/OAUTHBEARER support 6 年之前
sasl_handshake_request_test.go 574371b50a removes var when assigning a value immediately 4 年之前
sasl_handshake_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 年之前
sasl_handshake_response_test.go 574371b50a removes var when assigning a value immediately 4 年之前
sticky_assignor_user_data.go 01915cf82e Add sticky partition assignor 5 年之前
sticky_assignor_user_data_test.go 01915cf82e Add sticky partition assignor 5 年之前
sync_group_request.go 124e7c647e Expose producer metrics with go-metrics 8 年之前
sync_group_request_test.go 1621c4959a Add tests for all new request types. 9 年之前
sync_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 年之前
sync_group_response_test.go 37654da7e1 Add support for decoding versioned responses 8 年之前
sync_producer.go 1e2740380a Do not modify ProducerMessage.MetaData during the whole publishing process. 6 年之前
sync_producer_test.go e3ecf7b088 added offline replicas operation to client for kafka version >= 1.x 5 年之前
timestamp.go ed80c61d79 Make timestamp fields of type time.Time and time.Duration 7 年之前
txn_offset_commit_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
txn_offset_commit_request_test.go 07ff436a6d Fix linter errors 4 年之前
txn_offset_commit_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 年之前
txn_offset_commit_response_test.go 07ff436a6d Fix linter errors 4 年之前
utils.go 477ab8fc96 removes cycle for appending all elements 4 年之前
utils_test.go a709f2d5ca String functions for KafkaVersion (#989) 7 年之前
zstd.go 8a56b725ac enables goimports lint 4 年之前

README.md

sarama

GoDoc Build Status Coverage

Sarama is an MIT-licensed Go client library for Apache Kafka version 0.8 (and later).

Getting started

  • API documentation and examples are available via godoc.
  • Mocks for testing are available in the mocks subpackage.
  • The examples directory contains more elaborate example applications.
  • The tools directory contains command line tools that can be useful for testing, diagnostics, and instrumentation.

You might also want to look at the Frequently Asked Questions.

Compatibility and API stability

Sarama provides a "2 releases + 2 months" compatibility guarantee: we support the two latest stable releases of Kafka and Go, and we provide a two month grace period for older releases. This means we currently officially support Go 1.12 through 1.13, and Kafka 2.1 through 2.4, although older releases are still likely to work.

Sarama follows semantic versioning and provides API stability via the gopkg.in service. You can import a version with a guaranteed stable API via http://gopkg.in/Shopify/sarama.v1. A changelog is available here.

Contributing