fluent-plugin-kafka-xst 0.19.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/ISSUE_TEMPLATE/bug_report.yaml +72 -0
- data/.github/ISSUE_TEMPLATE/config.yml +5 -0
- data/.github/ISSUE_TEMPLATE/feature_request.yaml +39 -0
- data/.github/dependabot.yml +6 -0
- data/.github/workflows/linux.yml +45 -0
- data/.github/workflows/stale-actions.yml +24 -0
- data/.gitignore +2 -0
- data/ChangeLog +344 -0
- data/Gemfile +6 -0
- data/LICENSE +14 -0
- data/README.md +594 -0
- data/Rakefile +12 -0
- data/ci/prepare-kafka-server.sh +33 -0
- data/examples/README.md +3 -0
- data/examples/out_kafka2/dynamic_topic_based_on_tag.conf +32 -0
- data/examples/out_kafka2/protobuf-formatter.conf +23 -0
- data/examples/out_kafka2/record_key.conf +31 -0
- data/fluent-plugin-kafka.gemspec +27 -0
- data/lib/fluent/plugin/in_kafka.rb +388 -0
- data/lib/fluent/plugin/in_kafka_group.rb +394 -0
- data/lib/fluent/plugin/in_rdkafka_group.rb +305 -0
- data/lib/fluent/plugin/kafka_plugin_util.rb +84 -0
- data/lib/fluent/plugin/kafka_producer_ext.rb +308 -0
- data/lib/fluent/plugin/out_kafka.rb +268 -0
- data/lib/fluent/plugin/out_kafka2.rb +427 -0
- data/lib/fluent/plugin/out_kafka_buffered.rb +374 -0
- data/lib/fluent/plugin/out_rdkafka.rb +324 -0
- data/lib/fluent/plugin/out_rdkafka2.rb +526 -0
- data/test/helper.rb +34 -0
- data/test/plugin/test_in_kafka.rb +66 -0
- data/test/plugin/test_in_kafka_group.rb +69 -0
- data/test/plugin/test_kafka_plugin_util.rb +44 -0
- data/test/plugin/test_out_kafka.rb +68 -0
- data/test/plugin/test_out_kafka2.rb +138 -0
- data/test/plugin/test_out_kafka_buffered.rb +68 -0
- data/test/plugin/test_out_rdkafka2.rb +182 -0
- metadata +214 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: a6c24e3153f666f2eef5760a5c2596a41b43ec38
|
4
|
+
data.tar.gz: 074d9ba7f2f515cf6f09e58fac80075ff738ea30
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 176d69e9c6dc1eb75c1ecdfe5104b4cbc46b5551b9053041e8aa85f3d52dc10a958fde5a8df41112cce2e3cd8bc003a9644e66a557af4d40b21102950751725e
|
7
|
+
data.tar.gz: c047a78bb81e8edd5dbbcde4d737752815a99448ef7020fc0eb05d57a6cd6adf9262a0d18b63e93e7e00f4533045519b4884f38a3939d0eee373a152f235b491
|
@@ -0,0 +1,72 @@
|
|
1
|
+
name: Bug Report
|
2
|
+
description: Create a report with a procedure for reproducing the bug
|
3
|
+
labels: "waiting-for-triage"
|
4
|
+
body:
|
5
|
+
- type: markdown
|
6
|
+
attributes:
|
7
|
+
value: |
|
8
|
+
Check [README](https://github.com/fluent/fluent-plugin-kafka/#faq) first and here is the list to help us investigate the problem.
|
9
|
+
- type: textarea
|
10
|
+
id: description
|
11
|
+
attributes:
|
12
|
+
label: Describe the bug
|
13
|
+
description: A clear and concise description of what the bug is
|
14
|
+
validations:
|
15
|
+
required: true
|
16
|
+
- type: textarea
|
17
|
+
id: reproduce
|
18
|
+
attributes:
|
19
|
+
label: To Reproduce
|
20
|
+
description: Steps to reproduce the behavior
|
21
|
+
validations:
|
22
|
+
required: true
|
23
|
+
- type: textarea
|
24
|
+
id: expected
|
25
|
+
attributes:
|
26
|
+
label: Expected behavior
|
27
|
+
description: A clear and concise description of what you expected to happen
|
28
|
+
validations:
|
29
|
+
required: true
|
30
|
+
- type: textarea
|
31
|
+
id: environment
|
32
|
+
attributes:
|
33
|
+
label: Your Environment
|
34
|
+
description: |
|
35
|
+
- Fluentd or td-agent version: `fluentd --version` or `td-agent --version`
|
36
|
+
- Operating system: `cat /etc/os-release`
|
37
|
+
- Kernel version: `uname -r`
|
38
|
+
|
39
|
+
Tip: If you hit the problem with older fluentd version, try latest version first.
|
40
|
+
value: |
|
41
|
+
- Fluentd version:
|
42
|
+
- TD Agent version:
|
43
|
+
- fluent-plugin-kafka version:
|
44
|
+
- ruby-kafka version:
|
45
|
+
- Operating system:
|
46
|
+
- Kernel version:
|
47
|
+
render: markdown
|
48
|
+
validations:
|
49
|
+
required: true
|
50
|
+
- type: textarea
|
51
|
+
id: configuration
|
52
|
+
attributes:
|
53
|
+
label: Your Configuration
|
54
|
+
description: |
|
55
|
+
Write your configuration here. Minimum reproducible fluentd.conf is recommended.
|
56
|
+
validations:
|
57
|
+
required: true
|
58
|
+
- type: textarea
|
59
|
+
id: logs
|
60
|
+
attributes:
|
61
|
+
label: Your Error Log
|
62
|
+
description: Write your ALL error log here
|
63
|
+
render: shell
|
64
|
+
validations:
|
65
|
+
required: true
|
66
|
+
- type: textarea
|
67
|
+
id: addtional-context
|
68
|
+
attributes:
|
69
|
+
label: Additional context
|
70
|
+
description: Add any other context about the problem here.
|
71
|
+
validations:
|
72
|
+
required: false
|
@@ -0,0 +1,39 @@
|
|
1
|
+
name: Feature request
|
2
|
+
description: Suggest an idea for this project
|
3
|
+
labels: "waiting-for-triage"
|
4
|
+
body:
|
5
|
+
- type: markdown
|
6
|
+
attributes:
|
7
|
+
value: |
|
8
|
+
Check [README.md](https://github.com/fluent/fluent-plugin-kafka/blob/master/README.md) first and here is the list to help us investigate the problem.
|
9
|
+
- type: textarea
|
10
|
+
id: description
|
11
|
+
attributes:
|
12
|
+
label: Is your feature request related to a problem? Please describe.
|
13
|
+
description: |
|
14
|
+
A clear and concise description of what the problem is.
|
15
|
+
Ex. I'm always frustrated when [...]
|
16
|
+
validations:
|
17
|
+
required: true
|
18
|
+
- type: textarea
|
19
|
+
id: solution
|
20
|
+
attributes:
|
21
|
+
label: Describe the solution you'd like
|
22
|
+
description: A clear and concise description of what you want to happen.
|
23
|
+
validations:
|
24
|
+
required: true
|
25
|
+
- type: textarea
|
26
|
+
id: alternative
|
27
|
+
attributes:
|
28
|
+
label: Describe alternatives you've considered
|
29
|
+
description: A clear and concise description of any alternative solutions or features you've considered.
|
30
|
+
validations:
|
31
|
+
required: true
|
32
|
+
- type: textarea
|
33
|
+
id: addtional-context
|
34
|
+
attributes:
|
35
|
+
label: Additional context
|
36
|
+
description: Add any other context or screenshots about the feature request here.
|
37
|
+
validations:
|
38
|
+
required: false
|
39
|
+
|
@@ -0,0 +1,45 @@
|
|
1
|
+
name: linux
|
2
|
+
on:
|
3
|
+
push:
|
4
|
+
branches: [master]
|
5
|
+
pull_request:
|
6
|
+
branches: [master]
|
7
|
+
jobs:
|
8
|
+
build:
|
9
|
+
runs-on: ${{ matrix.os }}
|
10
|
+
env:
|
11
|
+
USE_RDKAFKA: 1
|
12
|
+
strategy:
|
13
|
+
fail-fast: false
|
14
|
+
matrix:
|
15
|
+
ruby: [ '3.2', '3.1', '3.0', '2.7' ]
|
16
|
+
os:
|
17
|
+
- ubuntu-latest
|
18
|
+
rdkafka_versions:
|
19
|
+
- { min: '>= 0.6.0', max: '< 0.12.0' }
|
20
|
+
- { min: '>= 0.12.0', max: '>= 0.12.0' }
|
21
|
+
name: Ruby ${{ matrix.ruby }} unit testing on ${{ matrix.os }} with rdkafka gem version (min ${{ matrix.rdkafka_versions.min }} max ${{ matrix.rdkafka_versions.max }})
|
22
|
+
steps:
|
23
|
+
- uses: actions/checkout@v3
|
24
|
+
- uses: ruby/setup-ruby@v1
|
25
|
+
with:
|
26
|
+
ruby-version: ${{ matrix.ruby }}
|
27
|
+
- name: Install confluent-kafka
|
28
|
+
run: |
|
29
|
+
sudo apt install -V -y gnupg2 wget
|
30
|
+
wget https://packages.confluent.io/deb/6.0/archive.key
|
31
|
+
sudo gpg2 --homedir /tmp --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/confluent-archive-keyring.gpg --import archive.key
|
32
|
+
sudo chmod 644 /usr/share/keyrings/confluent-archive-keyring.gpg
|
33
|
+
sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/confluent-archive-keyring.gpg] https://packages.confluent.io/deb/6.0 stable main" > /etc/apt/sources.list.d/confluent.list'
|
34
|
+
sudo apt update
|
35
|
+
sudo apt install -y confluent-community-2.13 openjdk-11-jre netcat-openbsd
|
36
|
+
- name: unit testing
|
37
|
+
env:
|
38
|
+
CI: true
|
39
|
+
RDKAFKA_VERSION_MIN_RANGE: ${{ matrix.rdkafka_versions.min }}
|
40
|
+
RDKAFKA_VERSION_MAX_RANGE: ${{ matrix.rdkafka_versions.max }}
|
41
|
+
run: |
|
42
|
+
sudo ./ci/prepare-kafka-server.sh
|
43
|
+
gem install bundler rake
|
44
|
+
bundle install --jobs 4 --retry 3
|
45
|
+
bundle exec rake test
|
@@ -0,0 +1,24 @@
|
|
1
|
+
name: "Mark or close stale issues and PRs"
|
2
|
+
on:
|
3
|
+
schedule:
|
4
|
+
- cron: "00 10 * * *"
|
5
|
+
|
6
|
+
jobs:
|
7
|
+
stale:
|
8
|
+
runs-on: ubuntu-latest
|
9
|
+
steps:
|
10
|
+
- uses: actions/stale@v8
|
11
|
+
with:
|
12
|
+
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
13
|
+
days-before-stale: 90
|
14
|
+
days-before-close: 30
|
15
|
+
stale-issue-message: "This issue has been automatically marked as stale because it has been open 90 days with no activity. Remove stale label or comment or this issue will be closed in 30 days"
|
16
|
+
stale-pr-message: "This PR has been automatically marked as stale because it has been open 90 days with no activity. Remove stale label or comment or this PR will be closed in 30 days"
|
17
|
+
close-issue-message: "This issue was automatically closed because of stale in 30 days"
|
18
|
+
close-pr-message: "This PR was automatically closed because of stale in 30 days"
|
19
|
+
stale-pr-label: "stale"
|
20
|
+
stale-issue-label: "stale"
|
21
|
+
exempt-issue-labels: "bug,enhancement,help wanted,waiting-for-triage"
|
22
|
+
exempt-pr-labels: "bug,enhancement,help wanted,waiting-for-triage"
|
23
|
+
exempt-all-assignees: true
|
24
|
+
exempt-all-milestones: true
|
data/.gitignore
ADDED
data/ChangeLog
ADDED
@@ -0,0 +1,344 @@
|
|
1
|
+
Release 0.19.0 - 2023/04/26
|
2
|
+
* out_kafka2: Add support for AWS IAM authentication
|
3
|
+
* in_kafka, in_kafka_group, out_kafka2: Add support for ssl client cert key password
|
4
|
+
* out_rdkafka2: Mask `ssl_client_cert_key_password` on dumping it to log
|
5
|
+
* out_rdkafka2: Support rdkafka-ruby 0.12
|
6
|
+
|
7
|
+
Release 0.18.1 - 2022/08/17
|
8
|
+
* out_kafka2: Fix a bug that it doesn't respect `chunk_limit_records` and `chunk_limit_size`
|
9
|
+
|
10
|
+
Release 0.18.0 - 2022/07/21
|
11
|
+
* out_kafka2: Keep alive Kafka connections between flushes
|
12
|
+
* out_rdkafka2: Enable to set SASL credentials via `username` and `password` parameters
|
13
|
+
* out_kafka2/out_rdkafka2: Add `record_key` parameter
|
14
|
+
|
15
|
+
Release 0.17.5 - 2022/03/18
|
16
|
+
* out_kafka2: Add `resolve_seed_brokers` parameter
|
17
|
+
|
18
|
+
Release 0.17.4 - 2022/01/25
|
19
|
+
* in_kafka_group: Add `refresh_topic_interval` parameter
|
20
|
+
|
21
|
+
Release 0.17.3 - 2021/11/26
|
22
|
+
* output: Suppress large warning logs for events skipped by `max_send_limit_bytes`
|
23
|
+
|
24
|
+
Release 0.17.2 - 2021/10/14
|
25
|
+
* out_rdkafka2: Add `max_enqueue_bytes_per_second` parameter
|
26
|
+
* out_rdkafka2: Support `use_event_time` parameter
|
27
|
+
* out_rdkafka2: Fix a potential bug that the plugin might exit without receiving responses from Kafka.
|
28
|
+
|
29
|
+
Release 0.17.1 - 2021/09/24
|
30
|
+
* out_rdkafka/out_rdkafka2: Support rdkafka 0.9.0 or later
|
31
|
+
* out_rdkafka/out_rdkafka2: Add `exclude_fields` parameter
|
32
|
+
* out_kafka2.rb: Fix one more Ruby 3.0 keyword arguments issue
|
33
|
+
|
34
|
+
Release 0.17.0 - 2021/08/30
|
35
|
+
* out_kafka/out_kafka_buffered/out_kafka2: Provide murmur2 partitioner hash function choice
|
36
|
+
* in_kafka/in_kafka_group/out_kafka/out_kafka_buffered/out_kafka2: Use Ruby Kafka's ssl_ca_cert_file_path parameter to feed the CA certs
|
37
|
+
* out_kafka/out_kafka2: fix description for `exclude_message_key` option
|
38
|
+
|
39
|
+
Release 0.16.3 - 2021/05/17
|
40
|
+
* in_kafka_group: Fix one more Ruby 3.0 keyword arguments issue
|
41
|
+
|
42
|
+
Release 0.16.2 - 2021/05/17
|
43
|
+
* in_kafka, in_kafka_group: Support Ruby 3.0 keyword arguments interop
|
44
|
+
|
45
|
+
Release 0.16.1 - 2021/04/14
|
46
|
+
* out_kafka/out_kafka_buffered: Support Ruby 3.0.0 keyword arguments interop
|
47
|
+
* kafka_plugin_util: Treat empty string in read_ssl_file as nil
|
48
|
+
|
49
|
+
Release 0.16.0 - 2021/01/25
|
50
|
+
|
51
|
+
* input: Add `tag_source` and `record_tag_key` parameters for using record field as tag
|
52
|
+
* in_kafka_group: Use NumericParser for floating point
|
53
|
+
|
54
|
+
Release 0.15.3 - 2020/12/08
|
55
|
+
|
56
|
+
* in_kafka: Fix `record_time_key` parameter not working
|
57
|
+
|
58
|
+
Release 0.15.2 - 2020/09/30
|
59
|
+
|
60
|
+
* input: Support 3rd party parser
|
61
|
+
|
62
|
+
Release 0.15.1 - 2020/09/17
|
63
|
+
|
64
|
+
* out_kafka2: Fix wrong class name for configuration error
|
65
|
+
|
66
|
+
Release 0.15.0 - 2020/09/14
|
67
|
+
|
68
|
+
* Add experimental `in_rdkafka_group`
|
69
|
+
* in_kafka: Expose `ssl_verify_hostname` parameter
|
70
|
+
|
71
|
+
Release 0.14.2 - 2020/08/26
|
72
|
+
|
73
|
+
* in_kafka_group: Add `add_headers` parameter
|
74
|
+
* out_kafka2/out_rdkafka2: Support `discard_kafka_delivery_failed` parameter
|
75
|
+
|
76
|
+
Release 0.14.1 - 2020/08/11
|
77
|
+
|
78
|
+
* kafka_producer_ext: Fix regression by v0.14.0 changes
|
79
|
+
|
80
|
+
Release 0.14.0 - 2020/08/07
|
81
|
+
|
82
|
+
* Update ruby-kafka dependency to v1.2.0 or later. Check https://github.com/zendesk/ruby-kafka#compatibility
|
83
|
+
* kafka_producer_ext: Follow Paritioner API change
|
84
|
+
|
85
|
+
Release 0.13.1 - 2020/07/17
|
86
|
+
|
87
|
+
* in_kafka_group: Support ssl_verify_hostname parameter
|
88
|
+
* in_kafka_group: Support regex based topics
|
89
|
+
* out_kafka2/out_rdkafka2: Support topic parameter with placeholders
|
90
|
+
|
91
|
+
Release 0.13.0 - 2020/03/09
|
92
|
+
|
93
|
+
* Accept ruby-kafka v1 or later
|
94
|
+
|
95
|
+
Release 0.12.4 - 2020/03/03
|
96
|
+
|
97
|
+
* output: Follow rdkafka log level
|
98
|
+
|
99
|
+
Release 0.12.3 - 2020/02/06
|
100
|
+
|
101
|
+
* output: Show warning message for v0.12 plugins
|
102
|
+
|
103
|
+
Release 0.12.2 - 2020/01/07
|
104
|
+
|
105
|
+
* input: Refer sasl_over_ssl parameter in plain SASL
|
106
|
+
|
107
|
+
Release 0.12.1 - 2019/10/14
|
108
|
+
|
109
|
+
* input: Add time_source parameter to replace use_record_time
|
110
|
+
|
111
|
+
Release 0.12.0 - 2019/09/27
|
112
|
+
|
113
|
+
* Support rdkafka-ruby v0.7. Drop v0.6 support.
|
114
|
+
|
115
|
+
Release 0.11.2 - 2019/09/27
|
116
|
+
|
117
|
+
* out_rdkafka2: Add share_producer parameter
|
118
|
+
|
119
|
+
Release 0.11.1 - 2019/08/22
|
120
|
+
|
121
|
+
* out_kafka2: Fix mutating issue of headers
|
122
|
+
|
123
|
+
Release 0.11.0 - 2019/07/17
|
124
|
+
|
125
|
+
* out_kafka2: Add connect_timeout / socket_timeout parameters
|
126
|
+
* out_kafka2/out_rdkafka2: Add headers / headers_from_record parameters
|
127
|
+
* output: Add use_event_time parameter to use fluentd event time for CreateTime
|
128
|
+
* input: Add get_kafka_client_log parameter. Default is `false`
|
129
|
+
|
130
|
+
Release 0.10.0 - 2019/07/03
|
131
|
+
|
132
|
+
* output: Fixed max_send_limit_bytes parameter to be in all kafka outputs
|
133
|
+
* output: Add ssl_verify_hostname parameter
|
134
|
+
* rdkafka output: Fix exceptiona handling
|
135
|
+
* Update ruby-kafka version to v0.7.8 or later
|
136
|
+
|
137
|
+
Release 0.9.6 - 2019/05/28
|
138
|
+
|
139
|
+
* out_kafka2: Add metadata nil check
|
140
|
+
|
141
|
+
Release 0.9.5 - 2019/05/23
|
142
|
+
|
143
|
+
* output: Support sasl_over_ssl parameter to not use SSL with SASL/GSSAPI
|
144
|
+
|
145
|
+
Release 0.9.4 - 2019/05/13
|
146
|
+
|
147
|
+
* out_rdkafka2: Add metadata nil check
|
148
|
+
|
149
|
+
Release 0.9.3 - 2019/05/04
|
150
|
+
|
151
|
+
* in_kafka_group: Add connect_timeout and socket_timeout parameters
|
152
|
+
|
153
|
+
Release 0.9.2 - 2019/03/26
|
154
|
+
|
155
|
+
* out_kafka_buffered: Fix typo of partition_key usage
|
156
|
+
|
157
|
+
Release 0.9.1 - 2019/03/25
|
158
|
+
|
159
|
+
* output: Support sasl_over_ssl parameter
|
160
|
+
* Support ruby-kafka 0.7.6
|
161
|
+
|
162
|
+
Release 0.9.0 - 2019/02/22
|
163
|
+
|
164
|
+
* Add v1 API based rdkafka2 output plugin
|
165
|
+
* out_kafka2: Add use_default_for_unknown_topic parameter
|
166
|
+
|
167
|
+
Release 0.8.4 - 2019/01/18
|
168
|
+
|
169
|
+
* in_kafka_group: Support integer/float time field with time_format
|
170
|
+
|
171
|
+
Release 0.8.3 - 2018/12/16
|
172
|
+
|
173
|
+
* output: Add ssl_client_cert_chain parameter
|
174
|
+
|
175
|
+
Release 0.8.2 - 2018/12/07
|
176
|
+
|
177
|
+
* output: Add idempotent parameter
|
178
|
+
* out_kafka2: Fix DeliveryFailed signature mismatch
|
179
|
+
|
180
|
+
Release 0.8.1 - 2018/11/20
|
181
|
+
|
182
|
+
* input: Support SASL without SSL
|
183
|
+
|
184
|
+
Release 0.8.0 - 2018/10/18
|
185
|
+
|
186
|
+
* output: Support SASL without SSL
|
187
|
+
* output: Add rdkafka based output
|
188
|
+
* Update ruby-kafka dependency to v0.7 or later
|
189
|
+
|
190
|
+
Release 0.7.9 - 2018/09/11
|
191
|
+
|
192
|
+
* in_kafka_group: Add fetcher_max_queue_size parameter
|
193
|
+
|
194
|
+
Release 0.7.8 - 2018/08/29
|
195
|
+
|
196
|
+
* input: Fix regression of kafka initialization
|
197
|
+
|
198
|
+
Release 0.7.7 - 2018/08/27
|
199
|
+
|
200
|
+
* in_kafka_group: Add retry_limit and disable_retry_limit parameters
|
201
|
+
* input: Support SSL parameters
|
202
|
+
* Add ssl_ca_certs_from_system parameter
|
203
|
+
* Make password parameter secret
|
204
|
+
|
205
|
+
Release 0.7.6 - 2018/08/15
|
206
|
+
|
207
|
+
* out_kafka2: Add ignore_exceptions and exception_backup parameters
|
208
|
+
|
209
|
+
Release 0.7.5 - 2018/08/14
|
210
|
+
|
211
|
+
* out_kafka2: Fix `message_key_key` parameter handling
|
212
|
+
* Limit ruby-kafka version('< 0.7.0') to avoid runtime error
|
213
|
+
|
214
|
+
Release 0.7.4 - 2018/07/11
|
215
|
+
|
216
|
+
* out_kafka2: Need event_emitter helper for notification
|
217
|
+
|
218
|
+
Release 0.7.3 - 2018/05/30
|
219
|
+
|
220
|
+
* output: Use SSL endpoint when ssl_client_cert is true
|
221
|
+
|
222
|
+
Release 0.7.2 - 2018/03/12
|
223
|
+
|
224
|
+
* output: Fix the regression of get_kafka_client_log parameter
|
225
|
+
|
226
|
+
Release 0.7.1 - 2018/03/05
|
227
|
+
|
228
|
+
* out_kafka2: Fix the regression of kafka client initialization
|
229
|
+
|
230
|
+
Release 0.7.0 - 2018/02/27
|
231
|
+
|
232
|
+
* output: SASL PLAIN/SCRAM support
|
233
|
+
* input: Fix TimeParser location bug in v1
|
234
|
+
* out_kafka2: Fix warning condition for tag chunk key
|
235
|
+
|
236
|
+
Release 0.6.6 - 2017/12/25
|
237
|
+
|
238
|
+
* output: Make topic/partition/partition_key/message_key configurable
|
239
|
+
|
240
|
+
Release 0.6.5 - 2017/12/14
|
241
|
+
|
242
|
+
* in_kafka_group: Add client_id parameter
|
243
|
+
|
244
|
+
Release 0.6.4 - 2017/11/23
|
245
|
+
|
246
|
+
* Multi worker support for v0.14
|
247
|
+
* Add kafka_message_key parameter to input plugins
|
248
|
+
* Relax ruby-kafka version for 0.5 or later
|
249
|
+
* Use oj for json when it is installed
|
250
|
+
|
251
|
+
Release 0.6.3 - 2017/11/14
|
252
|
+
|
253
|
+
* in_kafka_group: re-create consumer when error happens during event fetch
|
254
|
+
|
255
|
+
Release 0.6.2 - 2017/11/1
|
256
|
+
|
257
|
+
* Fix ltsv parsing issue which generates symbol keys
|
258
|
+
|
259
|
+
Release 0.6.1 - 2017/08/30
|
260
|
+
|
261
|
+
* Add stats and datadog monitoring support
|
262
|
+
* ssl_ca_certs now accepts multiple paths
|
263
|
+
* Fix bug by ruby-kafka 0.4.1 changes
|
264
|
+
* Update ruby-kafka dependency to v0.4.1
|
265
|
+
|
266
|
+
Release 0.6.0 - 2017/07/25
|
267
|
+
|
268
|
+
* Add principal and keytab parameters for SASL support
|
269
|
+
|
270
|
+
Release 0.5.7 - 2017/07/13
|
271
|
+
|
272
|
+
* out_kafka_buffered: Add kafka_agg_max_messages parameter
|
273
|
+
|
274
|
+
Release 0.5.6 - 2017/07/10
|
275
|
+
|
276
|
+
* output: Add ActiveSupport notification support
|
277
|
+
|
278
|
+
Release 0.5.5 - 2017/04/19
|
279
|
+
|
280
|
+
* output: Some trace log level changed to debug
|
281
|
+
* out_kafka_buffered: Add discard_kafka_delivery_failed parameter
|
282
|
+
|
283
|
+
Release 0.5.4 - 2017/04/12
|
284
|
+
|
285
|
+
* out_kafka_buffered: Add max_send_limit_bytes parameter
|
286
|
+
* out_kafka: Improve buffer overflow handling of ruby-kafka
|
287
|
+
|
288
|
+
Release 0.5.3 - 2017/02/13
|
289
|
+
|
290
|
+
* Relax ruby-kafka dependency
|
291
|
+
|
292
|
+
Release 0.5.2 - 2017/02/13
|
293
|
+
|
294
|
+
* in_kafka_group: Add max_bytes parameter
|
295
|
+
|
296
|
+
Release 0.5.1 - 2017/02/06
|
297
|
+
|
298
|
+
* in_kafka_group: Fix uninitialized constant error
|
299
|
+
|
300
|
+
Release 0.5.0 - 2017/01/17
|
301
|
+
|
302
|
+
* output: Add out_kafka2 plugin with v0.14 API
|
303
|
+
|
304
|
+
Release 0.4.2 - 2016/12/10
|
305
|
+
|
306
|
+
* input: Add use_record_time and time_format parameters
|
307
|
+
* Update ruby-kafka dependency to 0.3.16.beta2
|
308
|
+
|
309
|
+
Release 0.4.1 - 2016/12/01
|
310
|
+
|
311
|
+
* output: Support specifying partition
|
312
|
+
|
313
|
+
Release 0.4.0 - 2016/11/08
|
314
|
+
|
315
|
+
* Remove zookeeper dependency
|
316
|
+
|
317
|
+
Release 0.3.5 - 2016/10/21
|
318
|
+
|
319
|
+
* output: Support message key and related parameters. #91
|
320
|
+
|
321
|
+
Release 0.3.4 - 2016/10/20
|
322
|
+
|
323
|
+
* output: Add exclude_topic_key and exclude_partition_key. #89
|
324
|
+
|
325
|
+
Release 0.3.3 - 2016/10/17
|
326
|
+
|
327
|
+
* out_kafka_buffered: Add get_kafka_client_log parameter. #83
|
328
|
+
* out_kafka_buffered: Skip and log invalid record to avoid buffer stuck. #86
|
329
|
+
* in_kafka_group: Add retry_emit_limit to handle BufferQueueLimitError. #87
|
330
|
+
|
331
|
+
Release 0.3.2 - 2016/10/06
|
332
|
+
|
333
|
+
* in_kafka_group: Re-fetch events after consumer error. #79
|
334
|
+
|
335
|
+
Release 0.3.1 - 2016/08/28
|
336
|
+
|
337
|
+
* output: Change default required_acks to -1. #70
|
338
|
+
* Support ruby version changed to 2.1.0 or later
|
339
|
+
|
340
|
+
Release 0.3.0 - 2016/08/24
|
341
|
+
|
342
|
+
* Fully replace poseidon ruby library with ruby-kafka to support latest kafka versions
|
343
|
+
|
344
|
+
See git commits for older changes
|
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
Copyright (C) 2014 htgc
|
2
|
+
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
you may not use this file except in compliance with the License.
|
5
|
+
You may obtain a copy of the License at
|
6
|
+
|
7
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
|
9
|
+
Unless required by applicable law or agreed to in writing, software
|
10
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
See the License for the specific language governing permissions and
|
13
|
+
limitations under the License.
|
14
|
+
|