logstash-output-faye 2.1.1 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f14c9e20d2204311cdccceec95ded7c923d5e5a7
4
- data.tar.gz: a99909df0a849b645c0dcd51c3c8321889e9c5ce
3
+ metadata.gz: c84a8228af88478051f9d33450c58d8cb331f7a9
4
+ data.tar.gz: 5321b905941a648b842dcf3267a70a4164f08c15
5
5
  SHA512:
6
- metadata.gz: 2cbb7b72491bcb996d67dd93c797a8027eabbe4d25ca897885e0e95166bc2885d3d18f4a8d881cb5021162c336a7f2bc790aa347883e7cee5036812c695bd226
7
- data.tar.gz: e33ebe3ae1126d536b08554bbbb13bc028742b6e805af38798edd912a68bace4d3c0d0e91c49477e58cc144158eb68e99e959ded9516c8792bd70d6ddeea0f70
6
+ metadata.gz: a9a960a36ac96bcb68e8bab72d27d91583853a2806114f4508548bc20362e2b3c2ffde554e58fd51e2c1ff4754d3a8f81256a1e2bede631252ceb6f34b641692
7
+ data.tar.gz: ebd9f5caaf0114f064da65cfc91d40cc6e86ed6dc3368faac1b200aac876c3f5bc43c60fc5818d34115393d55a230d9c8023d9879c36f99624fd4e3bbb47f2ef
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 2.2.0
2
+ - Changed dependency to new logstash-core-plugin-api
3
+
1
4
  ## 2.1.0
2
5
  - Option for SSL-verification
3
6
 
@@ -3,6 +3,7 @@
3
3
  require "logstash/namespace"
4
4
  require "logstash/outputs/base"
5
5
  require 'json'
6
+ require 'pry'
6
7
 
7
8
  # File output.
8
9
  #
@@ -29,6 +30,13 @@ class LogStash::Outputs::Faye < LogStash::Outputs::Base
29
30
  # especially never in production.
30
31
  config :verify_ssl, :validate => :boolean, :default => true
31
32
 
33
+ # This lets you choose the structure and parts of the event that are sent.
34
+ #
35
+ # For example:
36
+ #
37
+ # mapping => ["foo", "%{host}", "bar", "%{type}"]
38
+ config :mapping, :validate => :hash
39
+
32
40
  public
33
41
  def register
34
42
  require "net/http"
@@ -42,38 +50,52 @@ class LogStash::Outputs::Faye < LogStash::Outputs::Base
42
50
  end # def receive
43
51
 
44
52
  private
45
- def _send_message(data)
53
+ def _send_message(event)
54
+
55
+ if @mapping
56
+ message = Hash.new
57
+ @mapping.each do |k,v|
58
+ message[k] = event.sprintf(v)
59
+ end
60
+ else
61
+ message = event.to_hash
62
+ end
63
+
46
64
  if @faye_token
47
- message = {:channel => @channel, :data => data, :ext => {:auth_token => @faye_token}}
65
+ message = {:channel => @channel, :data => message, :ext => {:auth_token => @faye_token}}
48
66
  else
49
- message = {:channel => @channel, :data => data}
67
+ message = {:channel => @channel, :data => message}
50
68
  end
51
69
 
52
70
  uri = URI.parse(@url)
53
71
 
54
- http = Net::HTTP.new(uri.host, uri.port)
72
+ begin
73
+ http = Net::HTTP.new(uri.host, uri.port)
55
74
 
56
- if uri.scheme == 'https'
57
- http.use_ssl = true
75
+ if uri.scheme == 'https'
76
+ http.use_ssl = true
58
77
 
59
- if !@verify_ssl
60
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
61
- else
62
- http.verify_mode = OpenSSL::SSL::VERIFY_PEER
78
+ if !@verify_ssl
79
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
80
+ else
81
+ http.verify_mode = OpenSSL::SSL::VERIFY_PEER
82
+ end
63
83
  end
64
- end
65
84
 
66
- request = Net::HTTP::Post.new(uri.path)
67
- request.set_form_data(:message => message.to_json)
85
+ request = Net::HTTP::Post.new(uri.path)
86
+ request.set_form_data(:message => message.to_json)
68
87
 
69
- response = http.request(request)
88
+ response = http.request(request)
70
89
 
71
- if response.is_a?(Net::HTTPSuccess)
72
- message = JSON.parse(response.body)
90
+ if response.is_a?(Net::HTTPSuccess)
91
+ message = JSON.parse(response.body)
73
92
 
74
- @logger.warn("Faye request was not successfully", message.first) unless message.first['successful']
75
- else
76
- @logger.warn("Faye response not ok", :http_status => response.code, :message => response.message)
93
+ @logger.warn("Faye request was not successfully", message.first) unless message.first['successful']
94
+ else
95
+ @logger.warn("Faye response not ok", :http_status => response.code, :message => response.message)
96
+ end
97
+ rescue Exception => e
98
+ @logger.warn("Unhandled exception", :request => request, :response => response, :exception => e, :stacktrace => e.backtrace)
77
99
  end
78
100
 
79
101
  end
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
 
3
3
  s.name = 'logstash-output-faye'
4
- s.version = '2.1.1'
4
+ s.version = '2.2.0'
5
5
  s.licenses = ['Apache License (2.0)']
6
6
  s.summary = "Send event to faye-message-server"
7
7
  s.description = "This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/plugin install gemname. This gem is not a stand-alone program"
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.metadata = { "logstash_plugin" => "true", "logstash_group" => "output" }
21
21
 
22
22
  # Gem dependencies
23
- s.add_runtime_dependency "logstash-core", ">= 2.0.0.beta2", "< 3.0.0"
23
+ s.add_runtime_dependency "logstash-core-plugin-api", ">= 1.20", "<= 2.99"
24
24
 
25
25
  s.add_development_dependency 'logstash-devutils'
26
26
  end
metadata CHANGED
@@ -1,35 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-faye
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Signify
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-16 00:00:00.000000000 Z
11
+ date: 2016-08-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
16
  - - '>='
17
17
  - !ruby/object:Gem::Version
18
- version: 2.0.0.beta2
19
- - - <
18
+ version: '1.20'
19
+ - - <=
20
20
  - !ruby/object:Gem::Version
21
- version: 3.0.0
22
- name: logstash-core
21
+ version: '2.99'
22
+ name: logstash-core-plugin-api
23
23
  prerelease: false
24
24
  type: :runtime
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - '>='
28
28
  - !ruby/object:Gem::Version
29
- version: 2.0.0.beta2
30
- - - <
29
+ version: '1.20'
30
+ - - <=
31
31
  - !ruby/object:Gem::Version
32
- version: 3.0.0
32
+ version: '2.99'
33
33
  - !ruby/object:Gem::Dependency
34
34
  requirement: !ruby/object:Gem::Requirement
35
35
  requirements: