sidekiq_process_killer 0.3.0 → 0.3.1

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: 238e5c56b973d15c48532c8ae97ed69e618ef2df
4
- data.tar.gz: 36bbaea2b7b882acc74eb0cda54ddea5206c5bdf
3
+ metadata.gz: 84e5673903431a47d9158bcbcb9de3d7f6863159
4
+ data.tar.gz: 54a0738048a84cc9a92506b7d196bac333ef24cb
5
5
  SHA512:
6
- metadata.gz: f07e2f56f74e42bcced965174a4142643de77b3a90c4ab453b9bc1930e4ef921fe422ea7c2b7d8ed93648515acae994ab3a04f09ae2ea8e233b4df06724dd8e4
7
- data.tar.gz: 39ed73ecfcf7d7b9a3fda70dfcc428db2e8eabb758fd33c27b582df587479f360e6b88e82aae1fd82ba62834d175bdde00131c3228a435a1c773a4649f369c67
6
+ metadata.gz: 4ea1e73fde7afaea140bf2340ffc11e825afb628b49ad30876670ab0beb28285cf9099e0ac271acb3786c9defaa6a0cef0b1333897f4f441035f7b4a2679e5b7
7
+ data.tar.gz: 33bcfb95b67911b32613673c742115bc2441b5b8f0fa6101b04d73cc78419f904b32d1e279e59979ab7676dbda86203a79f44062a876ab791971759edfddc0ca
@@ -6,14 +6,14 @@ module SidekiqProcessKiller
6
6
  attr_accessor :pid, :worker, :jid, :queue, :memory
7
7
 
8
8
  def call(worker, job, queue)
9
+ yield
10
+
9
11
  @pid = ::Process.pid
10
12
  @worker = worker.class
11
13
  @queue = queue
12
14
  @memory = process_memory.mb
13
15
  @jid = job['jid']
14
16
 
15
- yield
16
-
17
17
  memory_threshold = SidekiqProcessKiller.memory_threshold
18
18
  return if memory_threshold > memory
19
19
 
@@ -1,3 +1,3 @@
1
1
  module SidekiqProcessKiller
2
- VERSION = "0.3.0"
2
+ VERSION = "0.3.1"
3
3
  end
@@ -1,9 +1,8 @@
1
1
  module SidekiqProcessKiller
2
2
  extend self
3
3
 
4
- attr_accessor :memory_threshold, :shutdown_wait_timeout, :shutdown_signal, :silent_mode, :statsd_klass
4
+ attr_accessor :shutdown_wait_timeout, :shutdown_signal, :silent_mode, :statsd_klass
5
5
 
6
- self.memory_threshold = 250.0 # mb
7
6
  self.shutdown_wait_timeout = 25 # seconds
8
7
  self.shutdown_signal = "SIGKILL"
9
8
  self.silent_mode = false
@@ -12,6 +11,19 @@ module SidekiqProcessKiller
12
11
  def config
13
12
  yield self
14
13
  end
14
+
15
+ def memory_threshold
16
+ @memory_threshold || 250.0
17
+ end
18
+
19
+ def memory_threshold=(value)
20
+ unless value.respond_to?(:to_f)
21
+ return @memory_threshold = 0.0
22
+ end
23
+
24
+ @memory_threshold = value.to_f
25
+ end
26
+
15
27
  end
16
28
 
17
29
  require "get_process_mem"
@@ -14,6 +14,8 @@ Gem::Specification.new do |spec|
14
14
  spec.homepage = "https://github.com/shayonj/sidekiq_process_killer"
15
15
  spec.license = "MIT"
16
16
 
17
+ spec.required_ruby_version = ">= 2.2.2"
18
+
17
19
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
18
20
  f.match(%r{^(test|spec|features)/})
19
21
  end
@@ -23,6 +25,6 @@ Gem::Specification.new do |spec|
23
25
  spec.add_development_dependency "rake", "~> 10.0"
24
26
  spec.add_development_dependency "rspec", "~> 3.0"
25
27
 
26
- spec.add_dependency "get_process_mem"
27
- spec.add_dependency "sidekiq"
28
+ spec.add_dependency "get_process_mem", "~> 0.2.1"
29
+ spec.add_dependency "sidekiq", "~> 5.0.5"
28
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq_process_killer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shayon Mukherjee
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-30 00:00:00.000000000 Z
11
+ date: 2017-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -56,30 +56,30 @@ dependencies:
56
56
  name: get_process_mem
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: 0.2.1
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: 0.2.1
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: sidekiq
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: 5.0.5
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: 5.0.5
83
83
  description: SidekiqProcessKiller plugs into Sidekiq's middleware and kills a process
84
84
  if its processing beyond the supplied RSS threshold. Since, this plugs into the
85
85
  middleware the check is performed after each job.
@@ -115,7 +115,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
115
115
  requirements:
116
116
  - - ">="
117
117
  - !ruby/object:Gem::Version
118
- version: '0'
118
+ version: 2.2.2
119
119
  required_rubygems_version: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - ">="