Describe the bug
Fluentd is run with multi-process workers and several @type rdkafka2 outputs (from fluent-plugin-kafka). Under load, the Ruby VM aborts with:
[BUG] Segmentation fault at 0x0000000000000000
The faulting stack is entirely inside rdkafka-0.21.0 (native_kafka.rb → rd_kafka_poll) and librdkafka.so, via FFI (ffi gem)
To Reproduce
- Install/run Fluentd with gems as below (fluent-plugin-kafka, rdkafka, ffi).
- Use workers 4 in (see configuration snippet).
- Configure multiple
@type rdkafka2 matches (e.g. separate labels for log/fm/pm pipelines) plus optional heartbeatkafka → copy → rdkafka2 store.
- Generate production-like log throughput.
- Observe kubectl logs (stderr): Ruby [BUG] crash with
rd_kafka_poll.
Expected behavior
No process-level segfault-class/ Ruby VM [BUG] abort.
Your Environment
- Fluentd version: 1.19.2
- Package version: 6.0.1
rdkafka (0.21.0)
ffi (1.17.0)
fluent-plugin-kafka (0.19.5)
fluentd (1.19.2)
ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +PRISM [x86_64-linux]
- Operating system:
NAME="Rocky Linux"
VERSION="9.7 (Blue Onyx)"
ID="rocky"
ID_LIKE="rhel centos fedora"
VERSION_ID="9.7"
PLATFORM_ID="platform:el9"
PRETTY_NAME="Rocky Linux 9.7 (Blue Onyx)"
ANSI_COLOR="0;32"
LOGO="fedora-logo-icon"
CPE_NAME="cpe:/o:rocky:rocky:9::baseos"
HOME_URL="https://rockylinux.org/"
VENDOR_NAME="RESF"
VENDOR_URL="https://resf.org/"
BUG_REPORT_URL="https://bugs.rockylinux.org/"
SUPPORT_END="2032-05-31"
ROCKY_SUPPORT_PRODUCT="Rocky-Linux-9"
ROCKY_SUPPORT_PRODUCT_VERSION="9.7"
REDHAT_SUPPORT_PRODUCT="Rocky Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="9.7"
- Kernel version: 5.14.0-427.94.1.el9_4.x86_64
Your Configuration
<system>
workers 4
<log>
format json
time_format %Y-%m-%dT%H:%M:%S.%6NZ
</log>
ignore_same_log_interval 30s
</system>
<source>
@type http
@id healthcheck_ipv4
port 9880
bind 0.0.0.0
</source>
<source>
@type http
@id healthcheck_ipv6
port 9880
bind "::"
</source>
<source>
@type http
@log_level error
@id input_http_ipv4
port 9000
bind 0.0.0.0
<transport tls>
ca_path <<isroot_cert>>
cert_path <<fluentd_cert>>
private_key_path <<fluentd_key_cert>>
</transport>
</source>
<source>
@type http
@log_level error
@id input_http_ipv6
port 9000
bind ::
<transport tls>
ca_path <<isroot_cert>>
cert_path <<fluentd_cert>>
private_key_path <<fluentd_key_cert>>
</transport>
</source>
<source>
@type exec
tag reload
command sh /opt/scripts/reload-config-and-crt.sh
run_interval 60s
keys none
<parse>
@type json
</parse>
</source>
<match reload>
@type stdout
<format>
@type json
</format>
</match>
<source>
@type exec
tag validate
command sh /etc/fluent/validation/fluentd_dry_run.sh
run_interval 10s
keys none
<parse>
@type json
</parse>
</source>
<match validate>
@type stdout
label @VALIDATE
<format>
@type json
</format>
</match>
@include /etc/fluent/filter.conf
@include /etc/fluent/logdata/logdata.conf
@include /etc/fluent/fmdata/fmdata.conf
@include /etc/fluent/fmdata/heartbeat-kafka.conf
@include /etc/fluent/pmdata/pmdata.conf
--------------------------------------------------------------------
eg:
logdata/log_kafka_label.conf
<label @KAFKALOG>
<match {*security_logs*,*debug_logs*,*LI_logs*,*custom_logs*,*audit_logs*}>
<buffer topic>
@type file
path /data/fluentdlogs/logskafka
flush_thread_count 4
chunk_limit_size 500KB
overflow_action drop_oldest_chunk
flush_mode interval
flush_interval 5s
total_limit_size 2GB
</buffer>
@type rdkafka2
get_kafka_client_log false
topic_key topic
default_topic <REDACTED_DEFAULT_TOPIC>
max_send_limit_bytes 1000000
compression_codec none
brokers "<REDACTED_BROKERS>" # e.g. host:port; SSL lines commented in lab config
<format>@type json</format>
use_event_time false
required_acks 1
</match>
</label>
Your Error Log
/opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:53: [BUG] Segmentation fault at 0x0000000000000000
ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +PRISM [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0007 p:---- s:0027 e:000026 CFUNC :rd_kafka_poll
c:0006 p:0009 s:0021 e:000020 BLOCK /opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:53 [FINISH]
c:0005 p:---- s:0018 e:000017 CFUNC :synchronize
c:0004 p:0007 s:0014 e:000013 BLOCK /opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:52
c:0003 p:0017 s:0011 e:000010 METHOD <internal:kernel>:168
c:0002 p:0005 s:0006 e:000005 BLOCK /opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:51 [FINISH]
c:0001 p:---- s:0003 e:000002 DUMMY [FINISH]
-- Ruby level backtrace information ----------------------------------------
/opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:51:in 'block (2 levels) in start'
<internal:kernel>:168:in 'loop'
/opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:52:in 'block (3 levels) in start'
/opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:52:in 'synchronize'
/opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:53:in 'block (4 levels) in start'
/opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/native_kafka.rb:53:in 'rd_kafka_poll'
-- Threading information ---------------------------------------------------
Total ractor count: 1
Ruby thread count for this ractor: 53
-- Machine register context ------------------------------------------------
RIP: 0x00007f8c41fce907 RBP: 0x00007f8b954d9dd0 RSP: 0x00007f8b954d9dc8
RAX: 0x0000000000000000 RBX: 0x00007f8b954da1e0 RCX: 0x0000000400000000
RDX: 0x0000000000000000 RDI: 0x0000000000000000 RSI: 0x0000000000000064
R8: 0x00007f8c41fd6ae0 R9: 0x0000000000000000 R10: 0x0000000000000000
R11: 0x00007f8c41fce900 R12: 0x0000000000000000 R13: 0x00007f8b954d9e80
R14: 0x0000000002db6270 R15: 0x0000000000000001 EFL: 0x0000000000010246
-- C level backtrace information -------------------------------------------
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f820160) [0x7f8c5f820160]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f609540) [0x7f8c5f609540]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f763a12) [0x7f8c5f763a12]
/lib64/libc.so.6(__restore_rt+0x0) [0x7f8c5f1d2c30]
/opt/fluent/lib/ruby/gems/3.4.0/gems/rdkafka-0.21.0/lib/rdkafka/../../ext/librdkafka.so(rd_kafka_poll+0x7) [0x7f8c41fce907]
/lib64/libffi.so.8(0x7f8c43a0b8d6) [0x7f8c43a0b8d6]
/lib64/libffi.so.8(0x7f8c43a08556) [0x7f8c43a08556]
/opt/fluent/lib/ruby/gems/3.4.0/gems/ffi-1.17.0/lib/ffi_c.so(0x7f8c422f9469) [0x7f8c422f9469]
/opt/fluent/lib/libruby.so.3.4(rb_nogvl+0x2ae) [0x7f8c5f7b63ce]
/opt/fluent/lib/ruby/gems/3.4.0/gems/ffi-1.17.0/lib/ffi_c.so(rbffi_do_blocking_call+0x1c) [0x7f8c422f943c]
/opt/fluent/lib/libruby.so.3.4(rb_vrescue2+0x10b) [0x7f8c5f614b0b]
/opt/fluent/lib/libruby.so.3.4(rb_rescue2+0x8a) [0x7f8c5f614d9a]
/opt/fluent/lib/ruby/gems/3.4.0/gems/ffi-1.17.0/lib/ffi_c.so(rbffi_CallFunction+0x242) [0x7f8c422fa402]
/opt/fluent/lib/ruby/gems/3.4.0/gems/ffi-1.17.0/lib/ffi_c.so(0x7f8c422fdfd3) [0x7f8c422fdfd3]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f7ee56b) [0x7f8c5f7ee56b]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f8017e8) [0x7f8c5f8017e8]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f80801a) [0x7f8c5f80801a]
/opt/fluent/lib/libruby.so.3.4(rb_yield+0xc2) [0x7f8c5f80d1e2]
/opt/fluent/lib/libruby.so.3.4(rb_ensure+0xd9) [0x7f8c5f615099]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f7ee56b) [0x7f8c5f7ee56b]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f7f4c7d) [0x7f8c5f7f4c7d]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f8028c2) [0x7f8c5f8028c2]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f80801a) [0x7f8c5f80801a]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f808f97) [0x7f8c5f808f97]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f7b4825) [0x7f8c5f7b4825]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f7b4d52) [0x7f8c5f7b4d52]
/opt/fluent/lib/libruby.so.3.4(0x7f8c5f7b5ae4) [0x7f8c5f7b5ae4]
/lib64/libc.so.6(start_thread+0x31a) [0x7f8c5f21e2ea]
/lib64/libc.so.6(clone+0x44) [0x7f8c5f2a25f4]
-- Other runtime information -----------------------------------------------
* Loaded script: /usr/sbin/fluentd
* Loaded features:
0 enumerator.so
1 thread.rb
2 fiber.so
3 rational.so
4 complex.so
5 ruby2_keywords.rb
6 /opt/fluent/lib/ruby/3.4.0/x86_64-linux/enc/encdb.so
7 /opt/fluent/lib/ruby/3.4.0/x86_64-linux/enc/trans/transdb.so
8 /opt/fluent/lib/ruby/3.4.0/x86_64-linux/rbconfig.rb
9 /opt/fluent/lib/ruby/3.4.0/rubygems/compatibility.rb
10 /opt/fluent/lib/ruby/3.4.0/rubygems/defaults.rb
11 /opt/fluent/lib/ruby/3.4.0/rubygems/deprecate.rb
12 /opt/fluent/lib/ruby/3.4.0/rubygems/errors.rb
13 /opt/fluent/lib/ruby/3.4.0/rubygems/target_rbconfig.rb
14 /opt/fluent/lib/ruby/3.4.0/rubygems/unknown_command_spell_checker.rb
15 /opt/fluent/lib/ruby/3.4.0/rubygems/exceptions.rb
16 /opt/fluent/lib/ruby/3.4.0/rubygems/basic_specification.rb
17 /opt/fluent/lib/ruby/3.4.0/rubygems/stub_specification.rb
18 /opt/fluent/lib/ruby/3.4.0/rubygems/platform.rb
19 /opt/fluent/lib/ruby/3.4.0/rubygems/specification_record.rb
20 /opt/fluent/lib/ruby/3.4.0/rubygems/util/list.rb
21 /opt/fluent/lib/ruby/3.4.0/rubygems/version.rb
22 /opt/fluent/lib/ruby/3.4.0/rubygems/requirement.rb
23 /opt/fluent/lib/ruby/3.4.0/rubygems/specification.rb
24 /opt/fluent/lib/ruby/3.4.0/rubygems/util.rb
25 /opt/fluent/lib/ruby/3.4.0/rubygems/dependency.rb
26 /opt/fluent/lib/ruby/3.4.0/rubygems/core_ext/kernel_gem.rb
27 /opt/fluent/lib/ruby/3.4.0/x86_64-linux/monitor.so
28 /opt/fluent/lib/ruby/3.4.0/monitor.rb
29 /opt/fluent/lib/ruby/3.4.0/rubygems.rb
30 /opt/fluent/lib/ruby/3.4.0/bundled_gems.rb
31 /opt/fluent/lib/ruby/3.4.0/rubygems/path_support.rb
32 /opt/fluent/lib/ruby/3.4.0/error_highlight/version.rb
33 /opt/fluent/lib/ruby/3.4.0/error_highlight/base.rb
34 /opt/fluent/lib/ruby/3.4.0/error_highlight/formatter.rb
35 /opt/fluent/lib/ruby/3.4.0/error_highlight/core_ext.rb
36 /opt/fluent/lib/ruby/3.4.0/error_highlight.rb
37 /opt/fluent/lib/ruby/3.4.0/did_you_mean/version.rb
38 /opt/fluent/lib/ruby/3.4.0/did_you_mean/core_ext/name_error.rb
39 /opt/fluent/lib/ruby/3.4.0/did_you_mean/levenshtein.rb
40 /opt/fluent/lib/ruby/3.4.0/did_you_mean/jaro_winkler.rb
41 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checker.rb
42 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
43 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
44 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checkers/name_error_checkers.rb
45 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checkers/method_name_checker.rb
46 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checkers/key_error_checker.rb
47 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checkers/null_checker.rb
48 /opt/fluent/lib/ruby/3.4.0/did_you_mean/tree_spell_checker.rb
49 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checkers/require_path_checker.rb
50 /opt/fluent/lib/ruby/3.4.0/did_you_mean/spell_checkers/pattern_key_name_checker.rb
51 /opt/fluent/lib/ruby/3.4.0/did_you_mean/formatter.rb
52 /opt/fluent/lib/ruby/3.4.0/did_you_mean.rb
53 /opt/fluent/lib/ruby/3.4.0/syntax_suggest/core_ext.rb
54 /opt/fluent/lib/ruby/3.4.0/rubygems/bundler_version_finder.rb
55 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/tsort/lib/tsort.rb
56 /opt/fluent/lib/ruby/3.4.0/rubygems/vendored_tsort.rb
57 /opt/fluent/lib/ruby/3.4.0/rubygems/request_set/gem_dependency_api.rb
58 /opt/fluent/lib/ruby/3.4.0/rubygems/request_set/lockfile/parser.rb
59 /opt/fluent/lib/ruby/3.4.0/rubygems/request_set/lockfile/tokenizer.rb
60 /opt/fluent/lib/ruby/3.4.0/rubygems/request_set/lockfile.rb
61 /opt/fluent/lib/ruby/3.4.0/rubygems/request_set.rb
62 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/gem_metadata.rb
63 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb
64 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/errors.rb
65 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
66 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb
67 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb
68 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb
69 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb
70 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb
71 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb
72 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/log.rb
73 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb
74 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph.rb
75 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/state.rb
76 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/modules/specification_provider.rb
77 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb
78 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/resolution.rb
79 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/resolver.rb
80 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo/modules/ui.rb
81 /opt/fluent/lib/ruby/3.4.0/rubygems/vendor/molinillo/lib/molinillo.rb
82 /opt/fluent/lib/ruby/3.4.0/rubygems/vendored_molinillo.rb
83 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/activation_request.rb
84 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/conflict.rb
85 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/dependency_request.rb
86 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/requirement_list.rb
87 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/stats.rb
88 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/set.rb
89 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/api_set.rb
90 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/composed_set.rb
91 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/best_set.rb
92 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/current_set.rb
93 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/git_set.rb
94 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/index_set.rb
95 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/installer_set.rb
96 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/lock_set.rb
97 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/vendor_set.rb
98 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/source_set.rb
99 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/specification.rb
100 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/spec_specification.rb
101 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/api_specification.rb
102 /opt/fluent/lib/ruby/3.4.0/rubygems/resolver/git_specification.rb
...
...
...
Additional context
rdkafka-ruby CHANGELOG documents segfault-class fixes from 0.22.0 onwards but fluentd-package 6.0.1 still points to rdkafka-ruby 0.21.0
- we did not observe this issue with fluentd-package
6.0.0 (Ruby 3.4.5, rdkafka 0.21.0). The issue started appearing after upgrading to fluentd-package 6.0.1 (Ruby 3.4.7, still using rdkafka 0.21.0).
Describe the bug
Fluentd is run with multi-process workers and several
@type rdkafka2 outputs (from fluent-plugin-kafka).Under load, the Ruby VM aborts with:[BUG] Segmentation fault at 0x0000000000000000
The faulting stack is entirely inside
rdkafka-0.21.0 (native_kafka.rb → rd_kafka_poll)andlibrdkafka.so, viaFFI (ffi gem)To Reproduce
@type rdkafka2matches (e.g. separate labels for log/fm/pm pipelines) plus optional heartbeatkafka → copy → rdkafka2 store.rd_kafka_poll.Expected behavior
No process-level segfault-class/ Ruby VM [BUG] abort.
Your Environment
Your Configuration
<system> workers 4 <log> format json time_format %Y-%m-%dT%H:%M:%S.%6NZ </log> ignore_same_log_interval 30s </system> <source> @type http @id healthcheck_ipv4 port 9880 bind 0.0.0.0 </source> <source> @type http @id healthcheck_ipv6 port 9880 bind "::" </source> <source> @type http @log_level error @id input_http_ipv4 port 9000 bind 0.0.0.0 <transport tls> ca_path <<isroot_cert>> cert_path <<fluentd_cert>> private_key_path <<fluentd_key_cert>> </transport> </source> <source> @type http @log_level error @id input_http_ipv6 port 9000 bind :: <transport tls> ca_path <<isroot_cert>> cert_path <<fluentd_cert>> private_key_path <<fluentd_key_cert>> </transport> </source> <source> @type exec tag reload command sh /opt/scripts/reload-config-and-crt.sh run_interval 60s keys none <parse> @type json </parse> </source> <match reload> @type stdout <format> @type json </format> </match> <source> @type exec tag validate command sh /etc/fluent/validation/fluentd_dry_run.sh run_interval 10s keys none <parse> @type json </parse> </source> <match validate> @type stdout label @VALIDATE <format> @type json </format> </match> @include /etc/fluent/filter.conf @include /etc/fluent/logdata/logdata.conf @include /etc/fluent/fmdata/fmdata.conf @include /etc/fluent/fmdata/heartbeat-kafka.conf @include /etc/fluent/pmdata/pmdata.conf -------------------------------------------------------------------- eg: logdata/log_kafka_label.conf <label @KAFKALOG> <match {*security_logs*,*debug_logs*,*LI_logs*,*custom_logs*,*audit_logs*}> <buffer topic> @type file path /data/fluentdlogs/logskafka flush_thread_count 4 chunk_limit_size 500KB overflow_action drop_oldest_chunk flush_mode interval flush_interval 5s total_limit_size 2GB </buffer> @type rdkafka2 get_kafka_client_log false topic_key topic default_topic <REDACTED_DEFAULT_TOPIC> max_send_limit_bytes 1000000 compression_codec none brokers "<REDACTED_BROKERS>" # e.g. host:port; SSL lines commented in lab config <format>@type json</format> use_event_time false required_acks 1 </match> </label>Your Error Log
Additional context
rdkafka-rubyCHANGELOG documentssegfault-classfixes from0.22.0onwards butfluentd-package 6.0.1still points tordkafka-ruby 0.21.06.0.0(Ruby 3.4.5,rdkafka 0.21.0). The issue started appearing after upgrading to fluentd-package6.0.1(Ruby 3.4.7, still usingrdkafka 0.21.0).