From e2fb3b35e2f602cdc9f0791441d542769af28c79 Mon Sep 17 00:00:00 2001 From: David Cheney Date: Wed, 3 Feb 2016 18:30:05 -0800 Subject: [PATCH 1/2] Allow proxy to be set in match config --- README.md | 4 ++++ lib/fluent/plugin/out_sumologic.rb | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 45121b6..09bbf43 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,7 @@ Or install it yourself as: type sumologic host collectors.sumologic.com port 443 + proxy 10.0.0.1:3128 format json|text path /receiver/v1/http/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX== @@ -43,6 +44,9 @@ Or install it yourself as: #### port - Port of HTTP Collectors URL +#### proxy +- HTTP proxy address including port + #### path - Path of HTTP Collectors URL diff --git a/lib/fluent/plugin/out_sumologic.rb b/lib/fluent/plugin/out_sumologic.rb index 7c2858a..78517ef 100644 --- a/lib/fluent/plugin/out_sumologic.rb +++ b/lib/fluent/plugin/out_sumologic.rb @@ -7,6 +7,7 @@ class Fluent::SumologicOutput< Fluent::BufferedOutput config_param :host, :string, :default => 'collectors.sumologic.com' config_param :port, :integer, :default => 443 + config_param :proxy, :string, :default => nil config_param :verify_ssl, :bool, :default => true config_param :path, :string, :default => '/receiver/v1/http/XXX' config_param :format, :string, :default => 'json' @@ -63,7 +64,8 @@ def write(chunk) end end - (proxy,proxy_port) = ENV['http_proxy'].split(':') + proxy_string = if ENV['http_proxy'] then ENV['http_proxy'] else @proxy end + (proxy,proxy_port) = proxy_string.split(':') http = Net::HTTP::Proxy(proxy,proxy_port).new(@host, @port.to_i) http.use_ssl = true http.verify_mode = @verify_ssl ? OpenSSL::SSL::VERIFY_PEER : OpenSSL::SSL::VERIFY_NONE From 9048e58da275eb9b124f922ddd28a339e5b086d9 Mon Sep 17 00:00:00 2001 From: David Cheney Date: Tue, 16 Feb 2016 17:09:10 -0800 Subject: [PATCH 2/2] fix so that proxy config is not required --- lib/fluent/plugin/out_sumologic.rb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/fluent/plugin/out_sumologic.rb b/lib/fluent/plugin/out_sumologic.rb index 78517ef..c070424 100644 --- a/lib/fluent/plugin/out_sumologic.rb +++ b/lib/fluent/plugin/out_sumologic.rb @@ -64,9 +64,12 @@ def write(chunk) end end + http = Net::HTTP.new(@host, @port.to_i) proxy_string = if ENV['http_proxy'] then ENV['http_proxy'] else @proxy end - (proxy,proxy_port) = proxy_string.split(':') - http = Net::HTTP::Proxy(proxy,proxy_port).new(@host, @port.to_i) + if(proxy_string){ + (proxy,proxy_port) = proxy_string.split(':') + http = Net::HTTP::Proxy(proxy,proxy_port).new(@host, @port.to_i) + } http.use_ssl = true http.verify_mode = @verify_ssl ? OpenSSL::SSL::VERIFY_PEER : OpenSSL::SSL::VERIFY_NONE http.set_debug_output $stderr