the message parameter for the syslog output plugin is documented as used to set the syslog message (default "%{message}")
The parameter is defined here logstash-output-syslog/lib/logstash/outputs/syslog.rb at main · logstash-plugins/logstash-output-syslog · GitHub
but it is never used in the plugin instead the message is constructed form the payload logstash-output-syslog/lib/logstash/outputs/syslog.rb at main · logstash-plugins/logstash-output-syslog · GitHub
if I configure as follows
syslog {
host => "172.16.0.1"
port => 514
protocol => "tcp"
msgid => "logstash"
procid => "%{[log][syslog][msgid]}"
facility => "%{[log][syslog][facility][name]}"
priority => "%{[log][syslog][priority][name]}"
sourcehost => "%{[log][hostname]}"
message => "___ A ___"
}
the output message is simply constructed from the event message
Something like
message = event.sprintf(@message)
if message.nil?
message = payload.to_s.rstrip.gsub(/[\r][\n]/, "\n").gsub(/[\n]/, '\n')
end
and setting the default value of message to nil should do the job and somewhat preserve compatibility