stresser 0.4.0 → 0.5.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/HISTORY.markdown CHANGED
@@ -1,3 +1,15 @@
1
+ ## 0.5
2
+ Added a 'shuffle' option that will take your wlog file and shuffle the
3
+ lines between each run. What it does in detail is:
4
+
5
+ 1. Transform \0 to \n in your file
6
+ 2. sort --random-sort your file
7
+ 3. Transform \n to \0
8
+ 4. Write to your_wlog.shuffled
9
+
10
+ This can be used to confuse caches. Just set `shuffle=true` in your
11
+ conf file.
12
+
1
13
  ## 0.4
2
14
  - added 'started at' column to csv export
3
15
  - refactored options pasing in stresser bin to match stresser-grapher and stresser-loggen
data/Rakefile CHANGED
@@ -6,7 +6,7 @@ begin
6
6
  Jeweler::Tasks.new do |gem|
7
7
  gem.name = "stresser"
8
8
  gem.summary = %Q{Wrapper around httperf for stresstesting your app.}
9
- gem.description = %Q{Wrapper around httperf for stresstesting your app. Runs httperf multiple times with different concurrency levels and generates an executive summary in .csv"}
9
+ gem.description = %Q{Wrapper around httperf for stresstesting your app. Runs httperf multiple times with different concurrency levels and generates an executive summary in .csv}
10
10
  gem.email = "jannis@moviepilot.com"
11
11
  gem.homepage = "http://github.com/moviepilot/stresser"
12
12
  gem.authors = ["Jannis Hermanns"]
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.0
1
+ 0.5.0
data/lib/mp_perf.rb CHANGED
@@ -70,9 +70,17 @@ class MPPerf
70
70
  # with different concurrency levels)
71
71
  #
72
72
  def single_benchmark(conf)
73
-
73
+ cloned_conf = conf.clone
74
+
75
+ # Shuffle the logfile around?
76
+ if conf['httperf_wlog'] and conf['shuffle']=='true'
77
+ file = conf['httperf_wlog'].split(',').last
78
+ `cat #{file} | tr "\\0" "\\n" | sort --random-sort | tr "\\n" "\\0" > #{file}.shuffled`
79
+ cloned_conf['httperf_wlog'] = conf['httperf_wlog']+'.shuffled'
80
+ end
81
+
74
82
  # Run httperf
75
- res = Httperf.run(conf)
83
+ res = Httperf.run(cloned_conf)
76
84
 
77
85
  return res
78
86
  end
data/stresser.gemspec CHANGED
@@ -1,60 +1,57 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{stresser}
8
- s.version = "0.4.0"
8
+ s.version = "0.5.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jannis Hermanns"]
12
- s.date = %q{2010-11-30}
13
- s.description = %q{Wrapper around httperf for stresstesting your app. Runs httperf multiple times with different concurrency levels and generates an executive summary in .csv"}
12
+ s.date = %q{2011-07-19}
13
+ s.description = %q{Wrapper around httperf for stresstesting your app. Runs httperf multiple times with different concurrency levels and generates an executive summary in .csv}
14
14
  s.email = %q{jannis@moviepilot.com}
15
15
  s.executables = ["stresser", "stresser-grapher", "stresser-loggen"]
16
16
  s.extra_rdoc_files = [
17
17
  "LICENSE",
18
- "README.markdown"
18
+ "README.markdown"
19
19
  ]
20
20
  s.files = [
21
21
  ".document",
22
- ".gitignore",
23
- "HISTORY.markdown",
24
- "LICENSE",
25
- "README.markdown",
26
- "Rakefile",
27
- "VERSION",
28
- "bin/stresser",
29
- "bin/stresser-grapher",
30
- "bin/stresser-loggen",
31
- "build/stresser-0.4.0.gem",
32
- "lib/grapher.rb",
33
- "lib/httperf.rb",
34
- "lib/mp_perf.rb",
35
- "lib/reports.yml",
36
- "sample.conf",
37
- "spec/httperf_session_based_output.txt",
38
- "spec/lib/httperf_spec.rb",
39
- "spec/lib/mp_perf_spec.rb",
40
- "spec/spec.opts",
41
- "spec/spec_helper.rb",
42
- "stresser.gemspec",
43
- "urls.log"
22
+ "HISTORY.markdown",
23
+ "LICENSE",
24
+ "README.markdown",
25
+ "Rakefile",
26
+ "VERSION",
27
+ "bin/stresser",
28
+ "bin/stresser-grapher",
29
+ "bin/stresser-loggen",
30
+ "build/stresser-0.4.0.gem",
31
+ "lib/grapher.rb",
32
+ "lib/httperf.rb",
33
+ "lib/mp_perf.rb",
34
+ "lib/reports.yml",
35
+ "sample.conf",
36
+ "spec/httperf_session_based_output.txt",
37
+ "spec/lib/httperf_spec.rb",
38
+ "spec/lib/mp_perf_spec.rb",
39
+ "spec/spec.opts",
40
+ "spec/spec_helper.rb",
41
+ "stresser.gemspec",
42
+ "urls.log"
44
43
  ]
45
44
  s.homepage = %q{http://github.com/moviepilot/stresser}
46
- s.rdoc_options = ["--charset=UTF-8"]
47
45
  s.require_paths = ["lib"]
48
- s.rubygems_version = %q{1.3.7}
46
+ s.rubygems_version = %q{1.5.2}
49
47
  s.summary = %q{Wrapper around httperf for stresstesting your app.}
50
48
  s.test_files = [
51
49
  "spec/lib/httperf_spec.rb",
52
- "spec/lib/mp_perf_spec.rb",
53
- "spec/spec_helper.rb"
50
+ "spec/lib/mp_perf_spec.rb",
51
+ "spec/spec_helper.rb"
54
52
  ]
55
53
 
56
54
  if s.respond_to? :specification_version then
57
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
58
55
  s.specification_version = 3
59
56
 
60
57
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
metadata CHANGED
@@ -1,13 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stresser
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 4
9
- - 0
10
- version: 0.4.0
4
+ prerelease:
5
+ version: 0.5.0
11
6
  platform: ruby
12
7
  authors:
13
8
  - Jannis Hermanns
@@ -15,7 +10,7 @@ autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
12
 
18
- date: 2010-11-30 00:00:00 +01:00
13
+ date: 2011-07-19 00:00:00 +02:00
19
14
  default_executable:
20
15
  dependencies:
21
16
  - !ruby/object:Gem::Dependency
@@ -26,9 +21,6 @@ dependencies:
26
21
  requirements:
27
22
  - - ">="
28
23
  - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 0
32
24
  version: "0"
33
25
  type: :runtime
34
26
  version_requirements: *id001
@@ -40,9 +32,6 @@ dependencies:
40
32
  requirements:
41
33
  - - ">="
42
34
  - !ruby/object:Gem::Version
43
- hash: 3
44
- segments:
45
- - 0
46
35
  version: "0"
47
36
  type: :runtime
48
37
  version_requirements: *id002
@@ -54,9 +43,6 @@ dependencies:
54
43
  requirements:
55
44
  - - ">="
56
45
  - !ruby/object:Gem::Version
57
- hash: 3
58
- segments:
59
- - 0
60
46
  version: "0"
61
47
  type: :runtime
62
48
  version_requirements: *id003
@@ -68,13 +54,10 @@ dependencies:
68
54
  requirements:
69
55
  - - ">="
70
56
  - !ruby/object:Gem::Version
71
- hash: 3
72
- segments:
73
- - 0
74
57
  version: "0"
75
58
  type: :runtime
76
59
  version_requirements: *id004
77
- description: "Wrapper around httperf for stresstesting your app. Runs httperf multiple times with different concurrency levels and generates an executive summary\xE2\x84\xA2 in .csv\""
60
+ description: Wrapper around httperf for stresstesting your app. Runs httperf multiple times with different concurrency levels and generates an executive summary in .csv
78
61
  email: jannis@moviepilot.com
79
62
  executables:
80
63
  - stresser
@@ -87,7 +70,6 @@ extra_rdoc_files:
87
70
  - README.markdown
88
71
  files:
89
72
  - .document
90
- - .gitignore
91
73
  - HISTORY.markdown
92
74
  - LICENSE
93
75
  - README.markdown
@@ -114,8 +96,8 @@ homepage: http://github.com/moviepilot/stresser
114
96
  licenses: []
115
97
 
116
98
  post_install_message:
117
- rdoc_options:
118
- - --charset=UTF-8
99
+ rdoc_options: []
100
+
119
101
  require_paths:
120
102
  - lib
121
103
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -123,23 +105,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
123
105
  requirements:
124
106
  - - ">="
125
107
  - !ruby/object:Gem::Version
126
- hash: 3
127
- segments:
128
- - 0
129
108
  version: "0"
130
109
  required_rubygems_version: !ruby/object:Gem::Requirement
131
110
  none: false
132
111
  requirements:
133
112
  - - ">="
134
113
  - !ruby/object:Gem::Version
135
- hash: 3
136
- segments:
137
- - 0
138
114
  version: "0"
139
115
  requirements: []
140
116
 
141
117
  rubyforge_project:
142
- rubygems_version: 1.3.7
118
+ rubygems_version: 1.5.2
143
119
  signing_key:
144
120
  specification_version: 3
145
121
  summary: Wrapper around httperf for stresstesting your app.
data/.gitignore DELETED
@@ -1,22 +0,0 @@
1
- ## MAC OS
2
- .DS_Store
3
-
4
- ## TEXTMATE
5
- *.tmproj
6
- tmtags
7
-
8
- ## EMACS
9
- *~
10
- \#*
11
- .\#*
12
-
13
- ## VIM
14
- *.swp
15
- *.swo
16
-
17
- ## PROJECT::GENERAL
18
- coverage
19
- rdoc
20
- pkg
21
-
22
- ## PROJECT::SPECIFIC