fluent/fluentd · error · ArgumentError
invalid protocol: #{proto}
Error message
invalid protocol: #{proto} What it means
Error "invalid protocol: #{proto}" thrown in fluent/fluentd.
Source
Thrown at lib/fluent/plugin_helper/socket.rb:52
include Fluent::PluginHelper::SocketOption
attr_reader :_sockets # for tests
# TODO: implement connection pool for specified host
def socket_create(proto, host, port, **kwargs, &block)
case proto
when :tcp
socket_create_tcp(host, port, **kwargs, &block)
when :udp
socket_create_udp(host, port, **kwargs, &block)
when :tls
socket_create_tls(host, port, **kwargs, &block)
when :unix
raise "not implemented yet"
else
raise ArgumentError, "invalid protocol: #{proto}"
end
end
def socket_create_tcp(host, port, resolve_name: false, connect_timeout: nil, **kwargs, &block)
sock = if connect_timeout
s = ::Socket.tcp(host, port, connect_timeout: connect_timeout)
s.autoclose = false # avoid GC triggered close
WrappedSocket::TCP.for_fd(s.fileno)
else
WrappedSocket::TCP.new(host, port)
end
socket_option_set(sock, resolve_name: resolve_name, **kwargs)
if block
begin
block.call(sock)
ensure
sock.close_write rescue nil
sock.close rescue nilView on GitHub (pinned to dd45c6e18d)
When it happens
Trigger: Thrown at lib/fluent/plugin_helper/socket.rb:52 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of fluent/fluentd@dd45c6e18d (2026-08-21).
Data as JSON: /api/errors/8dc8d1b0ef594efd.
Report an issue: GitHub.