fluent-plugin-amqp 0.0.0 → 0.1.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.
- data/lib/fluent/plugin/in_amqp.rb +24 -2
- data/lib/fluent/plugin/out_amqp.rb +3 -1
- metadata +50 -20
@@ -9,14 +9,19 @@ module Fluent
|
|
9
9
|
config_param :pass, :string, :default => "guest"
|
10
10
|
config_param :vhost, :string, :default => "/"
|
11
11
|
config_param :port, :integer, :default => 5672
|
12
|
+
config_param :ssl, :bool, :default => false
|
13
|
+
config_param :verify_ssl, :bool, :default => false
|
12
14
|
config_param :queue, :string, :default => nil
|
13
15
|
config_param :durable, :bool, :default => false
|
14
16
|
config_param :exclusive, :bool, :default => false
|
15
17
|
config_param :auto_delete, :bool, :default => false
|
16
18
|
config_param :passive, :bool, :default => false
|
19
|
+
config_param :payload_format, :string, :default => "json"
|
17
20
|
|
18
21
|
def initialize
|
19
22
|
require 'bunny'
|
23
|
+
require "json" if @payload_format == "json"
|
24
|
+
|
20
25
|
super
|
21
26
|
end
|
22
27
|
|
@@ -28,7 +33,7 @@ module Fluent
|
|
28
33
|
raise ConfigError, "'host' and 'queue' must be all specified."
|
29
34
|
end
|
30
35
|
@bunny = Bunny.new(:host => @host, :port => @port, :vhost => @vhost,
|
31
|
-
:pass => @pass, :user => @user)
|
36
|
+
:pass => @pass, :user => @user, :ssl => @ssl, :verify_ssl => @verify_ssl)
|
32
37
|
end
|
33
38
|
|
34
39
|
def start
|
@@ -47,10 +52,27 @@ module Fluent
|
|
47
52
|
q = @bunny.queue(@queue, :passive => @passive, :durable => @durable,
|
48
53
|
:exclusive => @exclusive, :auto_delete => @auto_delete)
|
49
54
|
q.subscribe do |msg|
|
50
|
-
|
55
|
+
payload = parse_payload(msg)
|
56
|
+
Engine.emit(@tag, Time.new.to_i, payload)
|
51
57
|
end
|
52
58
|
end # AMQPInput#run
|
53
59
|
|
60
|
+
private
|
61
|
+
def parse_payload(msg)
|
62
|
+
ret = { payload: msg[:payload] }
|
63
|
+
|
64
|
+
begin
|
65
|
+
case @payload_format
|
66
|
+
when "json"
|
67
|
+
ret = JSON.parse(msg[:payload])
|
68
|
+
end
|
69
|
+
rescue => e
|
70
|
+
# should raises a error to ovserver?
|
71
|
+
$log.error "parse payload error: #{e}, payload: #{msg[:payload]}"
|
72
|
+
end
|
73
|
+
|
74
|
+
ret
|
75
|
+
end
|
54
76
|
end # class AMQPInput
|
55
77
|
|
56
78
|
end # module Fluent
|
@@ -7,6 +7,8 @@ module Fluent
|
|
7
7
|
config_param :pass, :string, :default => "guest"
|
8
8
|
config_param :vhost, :string, :default => "/"
|
9
9
|
config_param :port, :integer, :default => 5672
|
10
|
+
config_param :ssl, :bool, :default => false
|
11
|
+
config_param :verify_ssl, :bool, :default => false
|
10
12
|
config_param :exchange, :string, :default => ""
|
11
13
|
config_param :exchange_type, :string, :default => "direct"
|
12
14
|
config_param :passive, :bool, :default => false
|
@@ -27,7 +29,7 @@ module Fluent
|
|
27
29
|
raise ConfigError, "'host', 'exchange' and 'key' must be all specified."
|
28
30
|
end
|
29
31
|
@bunny = Bunny.new(:host => @host, :port => @port, :vhost => @vhost,
|
30
|
-
:pass => @pass, :user => @user)
|
32
|
+
:pass => @pass, :user => @user, :ssl => @ssl, :verify_ssl => @verify_ssl)
|
31
33
|
end
|
32
34
|
|
33
35
|
def start
|
metadata
CHANGED
@@ -1,20 +1,21 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-amqp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Hiromi Ishii
|
9
|
+
- Team Giraffi
|
10
|
+
- HiganWorks LLC
|
9
11
|
autorequire:
|
10
12
|
bindir: bin
|
11
13
|
cert_chain: []
|
12
|
-
date:
|
13
|
-
default_executable:
|
14
|
+
date: 2013-03-30 00:00:00.000000000 Z
|
14
15
|
dependencies:
|
15
16
|
- !ruby/object:Gem::Dependency
|
16
17
|
name: fluentd
|
17
|
-
requirement:
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
18
19
|
none: false
|
19
20
|
requirements:
|
20
21
|
- - ! '>='
|
@@ -22,10 +23,15 @@ dependencies:
|
|
22
23
|
version: 0.10.5
|
23
24
|
type: :runtime
|
24
25
|
prerelease: false
|
25
|
-
version_requirements:
|
26
|
+
version_requirements: !ruby/object:Gem::Requirement
|
27
|
+
none: false
|
28
|
+
requirements:
|
29
|
+
- - ! '>='
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: 0.10.5
|
26
32
|
- !ruby/object:Gem::Dependency
|
27
33
|
name: bunny
|
28
|
-
requirement:
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
29
35
|
none: false
|
30
36
|
requirements:
|
31
37
|
- - ! '>='
|
@@ -33,10 +39,15 @@ dependencies:
|
|
33
39
|
version: 0.7.8
|
34
40
|
type: :runtime
|
35
41
|
prerelease: false
|
36
|
-
version_requirements:
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
none: false
|
44
|
+
requirements:
|
45
|
+
- - ! '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.7.8
|
37
48
|
- !ruby/object:Gem::Dependency
|
38
49
|
name: shoulda
|
39
|
-
requirement:
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
40
51
|
none: false
|
41
52
|
requirements:
|
42
53
|
- - ! '>='
|
@@ -44,10 +55,15 @@ dependencies:
|
|
44
55
|
version: '0'
|
45
56
|
type: :development
|
46
57
|
prerelease: false
|
47
|
-
version_requirements:
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ! '>='
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
48
64
|
- !ruby/object:Gem::Dependency
|
49
65
|
name: bundler
|
50
|
-
requirement:
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
51
67
|
none: false
|
52
68
|
requirements:
|
53
69
|
- - ~>
|
@@ -55,10 +71,15 @@ dependencies:
|
|
55
71
|
version: 1.0.0
|
56
72
|
type: :development
|
57
73
|
prerelease: false
|
58
|
-
version_requirements:
|
74
|
+
version_requirements: !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ~>
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: 1.0.0
|
59
80
|
- !ruby/object:Gem::Dependency
|
60
81
|
name: jeweler
|
61
|
-
requirement:
|
82
|
+
requirement: !ruby/object:Gem::Requirement
|
62
83
|
none: false
|
63
84
|
requirements:
|
64
85
|
- - ~>
|
@@ -66,10 +87,15 @@ dependencies:
|
|
66
87
|
version: 1.6.4
|
67
88
|
type: :development
|
68
89
|
prerelease: false
|
69
|
-
version_requirements:
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
91
|
+
none: false
|
92
|
+
requirements:
|
93
|
+
- - ~>
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: 1.6.4
|
70
96
|
- !ruby/object:Gem::Dependency
|
71
97
|
name: rcov
|
72
|
-
requirement:
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
73
99
|
none: false
|
74
100
|
requirements:
|
75
101
|
- - ! '>='
|
@@ -77,9 +103,14 @@ dependencies:
|
|
77
103
|
version: '0'
|
78
104
|
type: :development
|
79
105
|
prerelease: false
|
80
|
-
version_requirements:
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - ! '>='
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '0'
|
81
112
|
description: AMQP input/output plugin for fluentd
|
82
|
-
email:
|
113
|
+
email: sawanoboriyu@higanworks.com
|
83
114
|
executables: []
|
84
115
|
extensions: []
|
85
116
|
extra_rdoc_files:
|
@@ -90,8 +121,7 @@ files:
|
|
90
121
|
- lib/fluent/plugin/out_amqp.rb
|
91
122
|
- LICENSE.txt
|
92
123
|
- README.rdoc
|
93
|
-
|
94
|
-
homepage: http://github.com/konn/fluent-plugin-amqp
|
124
|
+
homepage: http://github.com/giraffi/fluent-plugin-amqp
|
95
125
|
licenses:
|
96
126
|
- Apache License, Version 2.0
|
97
127
|
post_install_message:
|
@@ -106,7 +136,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
106
136
|
version: '0'
|
107
137
|
segments:
|
108
138
|
- 0
|
109
|
-
hash: -
|
139
|
+
hash: -2560613937427210027
|
110
140
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
111
141
|
none: false
|
112
142
|
requirements:
|
@@ -115,7 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
115
145
|
version: '0'
|
116
146
|
requirements: []
|
117
147
|
rubyforge_project:
|
118
|
-
rubygems_version: 1.
|
148
|
+
rubygems_version: 1.8.25
|
119
149
|
signing_key:
|
120
150
|
specification_version: 3
|
121
151
|
summary: AMQP input/output plugin or fluentd
|