Hello i followed some guides on how to do basic auth in logstash. However, when i check the outgoing packet from logstash, the HTTP protocol contains "Authorization: Basic %{password}" instead of "Authorization: Basic <base64 encoded string (user:pass)>"
here is my config
input {
beats {
host => "localhost"
port => 5044
}
}
filter {
mutate {
remove_field => [ "host", "@timestamp", "@version", "tags", "input", "ecs", "agent", "log", "offset"]
}
grok {
patterns_dir => ["C:\\logstash\\patterns"]
match => { "message" => "%{COMMON_TIMESTAMP:timestamp}"}
}
ruby {
code => "
require 'base64';
event['password'] = Base64.encode64('root:root').sub(/\n/,'')
"
}
}
output {
stdout { codec => rubydebug }
http {
headers => {"Authorization" => "Basic %{password}"}
url => ["http://localhost:9999/api/v1/logs/data"]
http_method => "post"
content_type => "application/json"
format => json
}
}
Additionally i am using logstash-7.7.0