flydata 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9b34f397692efd9d9bc9575588d19263b9c0df2c
4
- data.tar.gz: 21b42d4c19267a6656eb8f8d8c21607cf54501f1
3
+ metadata.gz: 8b8bbf89988f5ae28562da185290028c00f02304
4
+ data.tar.gz: e443c6fb75c571b1c1fc95ef40c3a877a7bb31fa
5
5
  SHA512:
6
- metadata.gz: 147ed1f61574abacfc850460e4745953c37bba5827985bd82adc51c9ef6750cb6188f3e56f52a3e855f73096c9fb6c05e97039ed68ac0982029a259f8a9a8c78
7
- data.tar.gz: a73489d7abcfb93db8720819143ad751d78493389d911407ede925a8f2417ba9161d7a742365b97de56595ca168139832ef179f37a025ce47e015da97b03829d
6
+ metadata.gz: aef7d1b13401d4881f020406ed6cfd32aca7193a01570cfac081556ce24a9a67b63678ce7da1762036dfbddeb02cbf67f283e4ce3ff4e7d9c756580cb786960c
7
+ data.tar.gz: cb4a80a2c7ce7fc1a507c57b6ad6ea51f23ae3299c562e3165799764d03eb9c8a021895209b1bb7c4708a54ebd609ae29b8dd437cf85d495e166169624dab0f6
data/Gemfile CHANGED
@@ -13,6 +13,7 @@ gem "mysql2", '~> 0.3', '>= 0.3.11'
13
13
  gem "slop", '~> 3.4', '>= 3.4.6'
14
14
  gem "treetop", '~> 1.5', '>= 1.5.3'
15
15
  gem "sys-filesystem", '~> 1.1', '>= 1.1.3'
16
+ gem "io-console", '~> 0.4.2', '>= 0.4.2'
16
17
 
17
18
  group :development do
18
19
  gem "jeweler", '~> 1.8', '>= 1.8.8'
data/Gemfile.lock CHANGED
@@ -49,6 +49,7 @@ GEM
49
49
  highline (1.6.21)
50
50
  http_parser.rb (0.6.0)
51
51
  i18n (0.6.11)
52
+ io-console (0.4.2)
52
53
  jeweler (1.8.8)
53
54
  builder
54
55
  bundler (~> 1.0)
@@ -129,6 +130,7 @@ DEPENDENCIES
129
130
  fluentd (= 0.10.46)
130
131
  highline (~> 1.6, >= 1.6.19)
131
132
  i18n (~> 0.6, >= 0.6.5)
133
+ io-console (~> 0.4.2, >= 0.4.2)
132
134
  jeweler (~> 1.8, >= 1.8.8)
133
135
  json (~> 1.8, >= 1.8.0)
134
136
  mysql2 (~> 0.3, >= 0.3.11)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.1
1
+ 0.3.2
data/flydata.gemspec CHANGED
@@ -2,14 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
+ # stub: flydata 0.3.2 ruby lib
5
6
 
6
7
  Gem::Specification.new do |s|
7
8
  s.name = "flydata"
8
- s.version = "0.3.1"
9
+ s.version = "0.3.2"
9
10
 
10
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
+ s.require_paths = ["lib"]
11
13
  s.authors = ["Koichi Fujikawa", "Masashi Miyazaki", "Matthew Luu", "Mak Inada", "Sriram NS"]
12
- s.date = "2015-02-24"
14
+ s.date = "2015-02-25"
13
15
  s.description = "FlyData Agent"
14
16
  s.email = "sysadmin@flydata.com"
15
17
  s.executables = ["fdmysqldump", "flydata", "serverinfo"]
@@ -150,8 +152,7 @@ Gem::Specification.new do |s|
150
152
  ]
151
153
  s.homepage = "http://flydata.com/"
152
154
  s.licenses = ["All right reserved."]
153
- s.require_paths = ["lib"]
154
- s.rubygems_version = "2.0.14"
155
+ s.rubygems_version = "2.2.2"
155
156
  s.summary = "FlyData Agent"
156
157
 
157
158
  if s.respond_to? :specification_version then
@@ -170,6 +171,7 @@ Gem::Specification.new do |s|
170
171
  s.add_runtime_dependency(%q<slop>, [">= 3.4.6", "~> 3.4"])
171
172
  s.add_runtime_dependency(%q<treetop>, [">= 1.5.3", "~> 1.5"])
172
173
  s.add_runtime_dependency(%q<sys-filesystem>, [">= 1.1.3", "~> 1.1"])
174
+ s.add_runtime_dependency(%q<io-console>, [">= 0.4.2", "~> 0.4.2"])
173
175
  s.add_development_dependency(%q<jeweler>, [">= 1.8.8", "~> 1.8"])
174
176
  s.add_development_dependency(%q<rspec>, ["~> 3.0"])
175
177
  s.add_development_dependency(%q<timecop>, [">= 0.7.1", "~> 0.7"])
@@ -192,6 +194,7 @@ Gem::Specification.new do |s|
192
194
  s.add_dependency(%q<slop>, [">= 3.4.6", "~> 3.4"])
193
195
  s.add_dependency(%q<treetop>, [">= 1.5.3", "~> 1.5"])
194
196
  s.add_dependency(%q<sys-filesystem>, [">= 1.1.3", "~> 1.1"])
197
+ s.add_dependency(%q<io-console>, [">= 0.4.2", "~> 0.4.2"])
195
198
  s.add_dependency(%q<jeweler>, [">= 1.8.8", "~> 1.8"])
196
199
  s.add_dependency(%q<rspec>, ["~> 3.0"])
197
200
  s.add_dependency(%q<timecop>, [">= 0.7.1", "~> 0.7"])
@@ -215,6 +218,7 @@ Gem::Specification.new do |s|
215
218
  s.add_dependency(%q<slop>, [">= 3.4.6", "~> 3.4"])
216
219
  s.add_dependency(%q<treetop>, [">= 1.5.3", "~> 1.5"])
217
220
  s.add_dependency(%q<sys-filesystem>, [">= 1.1.3", "~> 1.1"])
221
+ s.add_dependency(%q<io-console>, [">= 0.4.2", "~> 0.4.2"])
218
222
  s.add_dependency(%q<jeweler>, [">= 1.8.8", "~> 1.8"])
219
223
  s.add_dependency(%q<rspec>, ["~> 3.0"])
220
224
  s.add_dependency(%q<timecop>, [">= 0.7.1", "~> 0.7"])
@@ -34,12 +34,7 @@ module Flydata
34
34
 
35
35
  # Start sender(fluentd) process
36
36
  log_info_stdout("Starting sender process.") unless options[:quiet]
37
- Dir.chdir(FLYDATA_HOME){
38
- Kernel.system("bash #{FLYDATA_SERVERINFO}", :out => [FLYDATA_LOG,'a'], :err => [FLYDATA_LOG,'a'])
39
- daemon_opt = opts.no_daemon? ? "" : daemon_option
40
- Kernel.system("ruby `which fluentd` #{daemon_opt} -l #{FLYDATA_LOG} -c #{FLYDATA_CONF} -p #{FLYDATA_FLUENT_PLUGIN_DIR}")
41
- }
42
- Kernel.sleep 5
37
+ raw_start(options)
43
38
 
44
39
  wait_until_client_ready(options)
45
40
  #wait_until_logs_uploaded
@@ -68,7 +63,7 @@ EOF
68
63
  unless process_exist?
69
64
  return true if client_buffer_empty?
70
65
  log_info_stdout("Process doesn't exist. But, the client buffer is not empty!!") unless options[:quiet]
71
- start(options)
66
+ raw_start(options)
72
67
  end
73
68
 
74
69
  log_info_stdout('Stopping input plugins and flushing the client buffer.') unless options[:quiet]
@@ -122,6 +117,14 @@ EOF
122
117
  # Return a list of fluentd parent processes run by the same user for the
123
118
  # same flydata.pid file but not the process managed by the file itself.
124
119
  CMD = %Q{test -f %s && ps -u `whoami` -o ppid,pid,args | grep '^ *1 ' | grep '\\%s' | egrep -v "\\b`cat %s`\\b"}
120
+ def raw_start(options)
121
+ Dir.chdir(FLYDATA_HOME){
122
+ Kernel.system("bash #{FLYDATA_SERVERINFO}", :out => [FLYDATA_LOG,'a'], :err => [FLYDATA_LOG,'a'])
123
+ daemon_opt = opts.no_daemon? ? "" : daemon_option
124
+ Kernel.system("ruby `which fluentd` #{daemon_opt} -l #{FLYDATA_LOG} -c #{FLYDATA_CONF} -p #{FLYDATA_FLUENT_PLUGIN_DIR}")
125
+ }
126
+ Kernel.sleep 5
127
+ end
125
128
  def orphan_processes
126
129
  cmd = CMD % [ pid_file, daemon_option, pid_file ]
127
130
  result = `#{cmd}`
@@ -75,6 +75,11 @@ class MysqlBinlogFlydataInput < MysqlBinlogInput
75
75
  end
76
76
  @sync_fm = Flydata::FileUtil::SyncFileManager.new(nil) # Passing nil for data_entry as this class does not use methods which require data_entry
77
77
 
78
+ #Remove tables that do not have pos files
79
+ new_tables = @sync_fm.get_new_table_list(@tables, "pos")
80
+ @tables -= new_tables
81
+ $log.info "Not watching these tables: #{new_tables.join(", ")}"
82
+
78
83
  table_meta = Mysql::TableMeta.new(
79
84
  mysql_url: mysql_url, database: @database, tables: @tables)
80
85
  table_meta.update
@@ -520,6 +520,23 @@ EOT
520
520
  end
521
521
  include_examples 'emits records correctly'
522
522
  end
523
+
524
+ context 'do not watch table if no position file is found' do
525
+ # Stub SyncFileManager.new(nil).get_new_table_list() and return [TEST_TABLE]
526
+ # Need to make sure no event is sent... how do I do that
527
+ let(:sync_fm) { double('sync_fm') }
528
+ before do
529
+ Flydata::FileUtil::SyncFileManager.any_instance.should_receive(:get_new_table_list).with(TEST_TABLES.split(","), "pos").and_return([TEST_TABLE])
530
+
531
+ Test.configure_plugin(plugin, TEST_CONFIG)
532
+ plugin.event_listener(rotate_event)
533
+ end
534
+ it do
535
+ event = insert_event
536
+ event['table_name'] = TEST_TABLE
537
+ expect_no_emitted_record(event)
538
+ end
539
+ end
523
540
  end
524
541
  end
525
542
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flydata
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Koichi Fujikawa
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2015-02-24 00:00:00.000000000 Z
15
+ date: 2015-02-25 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: rest-client
@@ -242,6 +242,26 @@ dependencies:
242
242
  - - ~>
243
243
  - !ruby/object:Gem::Version
244
244
  version: '1.1'
245
+ - !ruby/object:Gem::Dependency
246
+ name: io-console
247
+ requirement: !ruby/object:Gem::Requirement
248
+ requirements:
249
+ - - '>='
250
+ - !ruby/object:Gem::Version
251
+ version: 0.4.2
252
+ - - ~>
253
+ - !ruby/object:Gem::Version
254
+ version: 0.4.2
255
+ type: :runtime
256
+ prerelease: false
257
+ version_requirements: !ruby/object:Gem::Requirement
258
+ requirements:
259
+ - - '>='
260
+ - !ruby/object:Gem::Version
261
+ version: 0.4.2
262
+ - - ~>
263
+ - !ruby/object:Gem::Version
264
+ version: 0.4.2
245
265
  - !ruby/object:Gem::Dependency
246
266
  name: jeweler
247
267
  requirement: !ruby/object:Gem::Requirement
@@ -572,7 +592,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
572
592
  version: '0'
573
593
  requirements: []
574
594
  rubyforge_project:
575
- rubygems_version: 2.0.14
595
+ rubygems_version: 2.2.2
576
596
  signing_key:
577
597
  specification_version: 4
578
598
  summary: FlyData Agent