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 +12 -0
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/lib/mp_perf.rb +10 -2
- data/stresser.gemspec +29 -32
- metadata +7 -31
- data/.gitignore +0 -22
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
|
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.
|
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(
|
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
|
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.
|
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{
|
13
|
-
s.description = %q{Wrapper around httperf for stresstesting your app. Runs httperf multiple times with different concurrency levels and generates an executive summary
|
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
|
-
|
18
|
+
"README.markdown"
|
19
19
|
]
|
20
20
|
s.files = [
|
21
21
|
".document",
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
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.
|
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
|
-
|
53
|
-
|
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
|
-
|
5
|
-
|
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:
|
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:
|
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
|
-
|
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.
|
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.
|