schwad_performance_logger 0.2.0 → 0.3.0

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
- SHA1:
3
- metadata.gz: 674ca62fc24c2236c78edd52c4c17fab4c46d946
4
- data.tar.gz: 8a2f881fc9ab052022799e2f634599c7b9a59d6c
2
+ SHA256:
3
+ metadata.gz: 8823086eed0c0363c91480f19696b7a643880c1a368f992c47ba91f523e689de
4
+ data.tar.gz: e8d5e0f0d27facc1fecb0c30c7af37eb27e5f3cd9424cfc0a2ac5bfd63cce612
5
5
  SHA512:
6
- metadata.gz: 13cd63c83a5ab428a8665324a6f691d08b523949797374ea34a283d5c61b36041ffec4b426edb13f7ec5801dd2ca12105584f9046a49bd622534f3a920899e8f
7
- data.tar.gz: 5586264c2c7028890803417ee1875c65acec5731b3345d16c68d0181ab40afb044c198df6970eeb9b15078e30fef8abc17a329b20731a84cb1372094fe1693e5
6
+ metadata.gz: 94f1e01c9f41e6fb2911f3d129203cf12826ab7ee868890fefaf1f208314163d42d4f0e3c8eb2064bc25659536f9f0ed5dd14d305ff566f44d28dd0cb28590a1
7
+ data.tar.gz: 0e8a7d78bab70bab0653579d3dd00ddce12dd3e1374974d0d8bd23e985577dc5abd28d9772344d0edaa77d73df3ba6ce8ca6e4912ebfb39336e3cc71246572b1
data/.gitignore CHANGED
File without changes
data/.rspec CHANGED
File without changes
data/.travis.yml CHANGED
File without changes
data/CODE_OF_CONDUCT.md CHANGED
File without changes
data/Gemfile CHANGED
File without changes
data/Gemfile.lock CHANGED
File without changes
data/LICENSE.txt CHANGED
File without changes
data/README.md CHANGED
File without changes
data/Rakefile CHANGED
File without changes
@@ -2,6 +2,7 @@ require 'schwad_performance_logger/version'
2
2
  require 'csv'
3
3
  require 'logger'
4
4
  require 'get_process_mem'
5
+ require 'benchmark/ips'
5
6
  require 'schwad_performance_logger/schwad_performance_logger'
6
7
 
7
8
 
@@ -13,4 +14,39 @@ module SchwadPerformanceLogger
13
14
  puts "I'm sorry, I don't know what you're trying to pass here!\n\n Please refer to the docs or pass an options hash https://github.com/oceanshq/schwad_performance_logger"
14
15
  end
15
16
  end
17
+
18
+ def self.ips
19
+ Benchmark.ips do |x|
20
+ x.report("PerformanceLogMethod") do
21
+ suppress_output do
22
+ yield
23
+ end
24
+ end
25
+ end
26
+ end
27
+
28
+ def self.time
29
+ suppress_output do
30
+ length_of_time = []
31
+ 10.times do
32
+ start_time = Time.now
33
+ yield
34
+ length_of_time << Time.now - start_time
35
+ end
36
+ end
37
+ puts "Average runtime #{length_of_time.sum / 10.0} seconds. Max time #{length_of_time.max}.seconds"
38
+ end
39
+
40
+ private
41
+
42
+ def self.suppress_output
43
+ original_stderr = $stderr.clone
44
+ original_stdout = $stdout.clone
45
+ $stderr.reopen(File.new('/dev/null', 'w'))
46
+ $stdout.reopen(File.new('/dev/null', 'w'))
47
+ yield
48
+ ensure
49
+ $stdout.reopen(original_stdout)
50
+ $stderr.reopen(original_stderr)
51
+ end
16
52
  end
@@ -1,3 +1,3 @@
1
1
  module SchwadPerformanceLogger
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["nicholas.schwaderer@gmail.com"]
11
11
 
12
12
  spec.summary = %q{Track your memory and time performance in console, csv and/or logs.}
13
- spec.homepage = "https://github.com/oceanshq/schwad_performance_logger"
13
+ spec.homepage = "https://schwad.github.io"
14
14
  spec.license = "MIT"
15
15
 
16
16
  # Specify which files should be added to the gem when it is released.
@@ -23,6 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.require_paths = ["lib"]
24
24
 
25
25
  spec.add_dependency "get_process_mem"
26
+ spec.add_dependency "benchmark-ips"
26
27
 
27
28
  spec.add_development_dependency "bundler", "~> 1.16"
28
29
  spec.add_development_dependency "rake", "~> 10.0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schwad_performance_logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Schwaderer
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-30 00:00:00.000000000 Z
11
+ date: 2019-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: get_process_mem
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: benchmark-ips
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -88,7 +102,7 @@ files:
88
102
  - lib/schwad_performance_logger/schwad_performance_logger.rb
89
103
  - lib/schwad_performance_logger/version.rb
90
104
  - schwad_performance_logger.gemspec
91
- homepage: https://github.com/oceanshq/schwad_performance_logger
105
+ homepage: https://schwad.github.io
92
106
  licenses:
93
107
  - MIT
94
108
  metadata: {}
@@ -107,8 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
107
121
  - !ruby/object:Gem::Version
108
122
  version: '0'
109
123
  requirements: []
110
- rubyforge_project:
111
- rubygems_version: 2.6.14.1
124
+ rubygems_version: 3.0.6
112
125
  signing_key:
113
126
  specification_version: 4
114
127
  summary: Track your memory and time performance in console, csv and/or logs.