fluent-plugin-mongo 0.6.5 → 0.6.6

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.6.5
1
+ 0.6.6
@@ -17,7 +17,7 @@ Gem::Specification.new do |gem|
17
17
  gem.require_paths = ['lib']
18
18
 
19
19
  gem.add_dependency "fluentd", ">= 0.10.7"
20
- gem.add_dependency "mongo", [">= 1.5.2", "<= 1.5.2"]
20
+ gem.add_dependency "mongo", ">= 1.6.0"
21
21
  gem.add_development_dependency "rake", ">= 0.9.2"
22
22
  gem.add_development_dependency "simplecov", ">= 0.5.4"
23
23
  gem.add_development_dependency "rr", ">= 1.0.0"
@@ -31,7 +31,6 @@ class MongoOutput < BufferedOutput
31
31
  super
32
32
  require 'mongo'
33
33
  require 'msgpack'
34
- require 'fluent/plugin/mongo_ext'
35
34
 
36
35
  @clients = {}
37
36
  @connection_options = {}
@@ -56,12 +55,6 @@ class MongoOutput < BufferedOutput
56
55
  @collection_options[:max] = Config.size_value(conf['capped_max']) if conf.has_key?('capped_max')
57
56
  end
58
57
 
59
- if @buffer.respond_to?(:buffer_chunk_limit)
60
- @buffer.buffer_chunk_limit = available_buffer_chunk_limit
61
- else
62
- $log.warn "#{Fluent::VERSION} does not have :buffer_chunk_limit. Be careful when insert large documents to MongoDB"
63
- end
64
-
65
58
  @connection_options[:safe] = @safe
66
59
 
67
60
  # MongoDB uses BSON's Date for time.
@@ -73,6 +66,13 @@ class MongoOutput < BufferedOutput
73
66
  end
74
67
 
75
68
  def start
69
+ # From configure for avoding complex method dependency...
70
+ if @buffer.respond_to?(:buffer_chunk_limit)
71
+ @buffer.buffer_chunk_limit = available_buffer_chunk_limit
72
+ else
73
+ $log.warn "#{Fluent::VERSION} does not have :buffer_chunk_limit. Be careful when insert large documents to MongoDB"
74
+ end
75
+
76
76
  super
77
77
  end
78
78
 
@@ -46,14 +46,11 @@ class MongoOutputReplset < MongoOutput
46
46
  end
47
47
 
48
48
  def parse_nodes(nodes)
49
- nodes.split(',').map { |node|
50
- host, port = node.split(':')
51
- [host, Integer(port)]
52
- }
49
+ nodes.split(',')
53
50
  end
54
51
 
55
52
  def get_connection
56
- db = Mongo::ReplSetConnection.new(*@nodes, @connection_options).db(@database)
53
+ db = Mongo::ReplSetConnection.new(@nodes, @connection_options).db(@database)
57
54
  authenticate(db)
58
55
  end
59
56
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-mongo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.5
4
+ version: 0.6.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-26 00:00:00.000000000Z
12
+ date: 2012-03-01 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: fluentd
16
- requirement: &2157236460 !ruby/object:Gem::Requirement
16
+ requirement: &2152542640 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,24 +21,21 @@ dependencies:
21
21
  version: 0.10.7
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2157236460
24
+ version_requirements: *2152542640
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: mongo
27
- requirement: &2157234540 !ruby/object:Gem::Requirement
27
+ requirement: &2152542020 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
31
31
  - !ruby/object:Gem::Version
32
- version: 1.5.2
33
- - - <=
34
- - !ruby/object:Gem::Version
35
- version: 1.5.2
32
+ version: 1.6.0
36
33
  type: :runtime
37
34
  prerelease: false
38
- version_requirements: *2157234540
35
+ version_requirements: *2152542020
39
36
  - !ruby/object:Gem::Dependency
40
37
  name: rake
41
- requirement: &2157233300 !ruby/object:Gem::Requirement
38
+ requirement: &2152541400 !ruby/object:Gem::Requirement
42
39
  none: false
43
40
  requirements:
44
41
  - - ! '>='
@@ -46,10 +43,10 @@ dependencies:
46
43
  version: 0.9.2
47
44
  type: :development
48
45
  prerelease: false
49
- version_requirements: *2157233300
46
+ version_requirements: *2152541400
50
47
  - !ruby/object:Gem::Dependency
51
48
  name: simplecov
52
- requirement: &2157232100 !ruby/object:Gem::Requirement
49
+ requirement: &2152540780 !ruby/object:Gem::Requirement
53
50
  none: false
54
51
  requirements:
55
52
  - - ! '>='
@@ -57,10 +54,10 @@ dependencies:
57
54
  version: 0.5.4
58
55
  type: :development
59
56
  prerelease: false
60
- version_requirements: *2157232100
57
+ version_requirements: *2152540780
61
58
  - !ruby/object:Gem::Dependency
62
59
  name: rr
63
- requirement: &2157230740 !ruby/object:Gem::Requirement
60
+ requirement: &2152539800 !ruby/object:Gem::Requirement
64
61
  none: false
65
62
  requirements:
66
63
  - - ! '>='
@@ -68,7 +65,7 @@ dependencies:
68
65
  version: 1.0.0
69
66
  type: :development
70
67
  prerelease: false
71
- version_requirements: *2157230740
68
+ version_requirements: *2152539800
72
69
  description: MongoDB plugin for Fluent event collector
73
70
  email: repeatedly@gmail.com
74
71
  executables:
@@ -87,7 +84,6 @@ files:
87
84
  - bin/mongo-tail
88
85
  - fluent-plugin-mongo.gemspec
89
86
  - lib/fluent/plugin/in_mongo_tail.rb
90
- - lib/fluent/plugin/mongo_ext.rb
91
87
  - lib/fluent/plugin/mongo_util.rb
92
88
  - lib/fluent/plugin/out_mongo.rb
93
89
  - lib/fluent/plugin/out_mongo_backup.rb
@@ -111,7 +107,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
111
107
  version: '0'
112
108
  segments:
113
109
  - 0
114
- hash: -3778596906539769149
110
+ hash: -1733988723759885390
115
111
  required_rubygems_version: !ruby/object:Gem::Requirement
116
112
  none: false
117
113
  requirements:
@@ -120,7 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
116
  version: '0'
121
117
  segments:
122
118
  - 0
123
- hash: -3778596906539769149
119
+ hash: -1733988723759885390
124
120
  requirements: []
125
121
  rubyforge_project:
126
122
  rubygems_version: 1.8.10
@@ -1,55 +0,0 @@
1
- require 'mongo'
2
-
3
- module Mongo
4
- class Collection
5
- # Temporary fix.
6
- # See pull request 82: https://github.com/mongodb/mongo-ruby-driver/pull/82
7
- def insert_documents(documents, collection_name=@name, check_keys=true, safe=false, flags={})
8
- if flags[:continue_on_error]
9
- message = BSON::ByteBuffer.new
10
- message.put_int(1)
11
- else
12
- message = BSON::ByteBuffer.new("\0\0\0\0")
13
- end
14
-
15
- collect_on_error = !!flags[:collect_on_error]
16
- error_docs = [] if collect_on_error
17
-
18
- BSON::BSON_RUBY.serialize_cstr(message, "#{@db.name}.#{collection_name}")
19
- documents =
20
- if collect_on_error
21
- documents.select do |doc|
22
- begin
23
- message.put_binary(BSON::BSON_CODER.serialize(doc, check_keys, true, @connection.max_bson_size).to_s)
24
- true
25
- rescue StandardError => e # StandardError will be replaced with BSONError
26
- doc.delete(:_id)
27
- error_docs << doc
28
- false
29
- end
30
- end
31
- else
32
- documents.each do |doc|
33
- message.put_binary(BSON::BSON_CODER.serialize(doc, check_keys, true, @connection.max_bson_size).to_s)
34
- end
35
- end
36
- raise InvalidOperation, "Exceded maximum insert size of 16,000,000 bytes" if message.size > 16_000_000
37
-
38
- instrument(:insert, :database => @db.name, :collection => collection_name, :documents => documents) do
39
- if safe
40
- @connection.send_message_with_safe_check(Mongo::Constants::OP_INSERT, message, @db.name, nil, safe)
41
- else
42
- @connection.send_message(Mongo::Constants::OP_INSERT, message)
43
- end
44
- end
45
-
46
- doc_ids = documents.collect { |o| o[:_id] || o['_id'] }
47
- if collect_on_error
48
- return doc_ids, error_docs
49
- else
50
- doc_ids
51
- end
52
- end
53
- end
54
- end
55
-