stresser 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
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