hansel 0.2.11 → 0.2.12
Sign up to get free protection for your applications and to get access to all the features.
- data/README.markdown +13 -3
- data/lib/hansel/formatting/formatting.rb +1 -6
- data/lib/hansel/httperf/httperf.rb +4 -0
- data/lib/hansel/version.rb +1 -1
- data/lib/hansel.rb +0 -1
- data/spec/httperf_result_parser_spec.rb +0 -1
- data/spec/spec_helper.rb +0 -4
- data/templates/octave.m.erb +11 -1
- metadata +4 -4
data/README.markdown
CHANGED
@@ -7,7 +7,7 @@ a job queue file, in a yaml format, run httperf with each job
|
|
7
7
|
Installing Httperf and Hansel
|
8
8
|
-----------------------------
|
9
9
|
|
10
|
-
|
10
|
+
# Httperf
|
11
11
|
|
12
12
|
For Linux (Ubuntu):
|
13
13
|
|
@@ -18,17 +18,27 @@ For Linux (Ubuntu):
|
|
18
18
|
gem update --system
|
19
19
|
gem install hansel
|
20
20
|
|
21
|
+
note: tested with EC2 ami-1b729472
|
22
|
+
|
21
23
|
On MacOS X using homebrew:
|
22
24
|
|
23
25
|
brew install httperf
|
24
26
|
gem install hansel
|
25
27
|
|
26
28
|
|
27
|
-
|
29
|
+
# Octave (optional)
|
30
|
+
|
31
|
+
## Downloading the pre-build binary
|
32
|
+
|
33
|
+
http://octave.sourceforge.net/
|
34
|
+
|
35
|
+
## Building Octave (warning: long!)
|
36
|
+
|
37
|
+
(note: using homebrew seems broken at the moment)
|
28
38
|
|
29
39
|
brew install gfortran octave
|
30
40
|
|
31
|
-
or with MacPorts:
|
41
|
+
or with MacPorts (broken at the moment):
|
32
42
|
|
33
43
|
sudo port install octave
|
34
44
|
|
@@ -23,12 +23,7 @@ module HanselCore
|
|
23
23
|
{ :output_file_name => file_name,
|
24
24
|
:template => template,
|
25
25
|
:description => @description,
|
26
|
-
:png_file_name => [
|
27
|
-
description,
|
28
|
-
num_conns.to_s
|
29
|
-
].compact.join('-'),
|
30
|
-
'png'
|
31
|
-
].join('.')
|
26
|
+
:png_file_name => [ @server, @port, description, num_conns.to_s ].compact.join('-')
|
32
27
|
}).format
|
33
28
|
end
|
34
29
|
end
|
@@ -19,6 +19,10 @@ module HanselCore
|
|
19
19
|
#
|
20
20
|
def httperf
|
21
21
|
httperf_cmd = build_httperf_cmd
|
22
|
+
# Do a pre-flight run to setup any resources
|
23
|
+
status "\n#{httperf_cmd} (warm up run)"
|
24
|
+
IO.popen("#{httperf_cmd} 2>&1")
|
25
|
+
|
22
26
|
IO.popen("#{httperf_cmd} 2>&1") do |pipe|
|
23
27
|
status "\n#{httperf_cmd}"
|
24
28
|
@results << (httperf_result = HttperfResult.new({
|
data/lib/hansel/version.rb
CHANGED
data/lib/hansel.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
data/templates/octave.m.erb
CHANGED
@@ -27,4 +27,14 @@ axis([0 <%= @max_rate %> 0 <%= @max_rate %>]);
|
|
27
27
|
title('Hansel report for <%= "#{@data.first.server}:#{@data.first.port}#{@data.first.uri} #{@description} (#{@data.first.num_conns}" %> connections per run)')
|
28
28
|
xlabel('Demanded Request Rate');
|
29
29
|
legend('Request Rate', 'Connection Rate', 'Avg. reply rate', 'Max. reply rate', 'Reply rate StdDev', 'Reply time', 'Errors');
|
30
|
-
print('<%= @png_output
|
30
|
+
print('<%= @png_output %>.png', '-dpng')
|
31
|
+
|
32
|
+
hold off;
|
33
|
+
plot(rate, reply_time, '-k*');
|
34
|
+
hold on;
|
35
|
+
grid on;
|
36
|
+
axis([0 <%= @max_rate %> <%= @data.map(&:reply_time).min - 10 %> <%= @data.map(&:reply_time).max + 10 %>]);
|
37
|
+
title('Hansel reply-time report for <%= "#{@data.first.server}:#{@data.first.port}#{@data.first.uri} #{@description} (#{@data.first.num_conns}" %> connections per run)')
|
38
|
+
xlabel('Demanded Request Rate');
|
39
|
+
ylabel('Reply time');
|
40
|
+
print('<%= @png_output %>_reply_time.png', '-dpng')
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hansel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 15
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 2
|
9
|
-
-
|
10
|
-
version: 0.2.
|
9
|
+
- 12
|
10
|
+
version: 0.2.12
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Paul Mylchreest
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-06-
|
18
|
+
date: 2011-06-15 00:00:00 -04:00
|
19
19
|
default_executable:
|
20
20
|
dependencies: []
|
21
21
|
|