hansel 0.2.5 → 0.2.6
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +57 -57
- data/VERSION +1 -1
- data/hansel.gemspec +1 -1
- metadata +2 -2
data/README.rdoc
CHANGED
@@ -7,87 +7,87 @@ a job queue file, in a yaml format, run httperf with each job
|
|
7
7
|
|
8
8
|
== Httperf
|
9
9
|
|
10
|
-
|
10
|
+
For Linux (Ubuntu):
|
11
11
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
12
|
+
apt-get update && apt-get -y install rubygems httperf ruby1.8-dev libcurl4-gnutls-dev
|
13
|
+
gem install rubygems-update
|
14
|
+
export PATH=$PATH:/var/lib/gems/1.8/bin
|
15
|
+
update_rubygems
|
16
16
|
|
17
|
-
|
17
|
+
On MacOS X using homebrew:
|
18
18
|
|
19
|
-
|
19
|
+
brew install httperf
|
20
20
|
|
21
|
-
|
21
|
+
finally:
|
22
22
|
|
23
|
-
|
23
|
+
gem install hansel
|
24
24
|
|
25
25
|
== Optional -- Installing Octave using macports (warning: long!)
|
26
26
|
|
27
|
-
|
27
|
+
sudo port install octave
|
28
28
|
|
29
29
|
= Example usage
|
30
30
|
|
31
31
|
Create a job queue file in ~/.hansel/jobs.yml:
|
32
32
|
|
33
|
-
---
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
33
|
+
---
|
34
|
+
- :server: www.example.com
|
35
|
+
:uri: /
|
36
|
+
:num_conns: 50
|
37
|
+
:low_rate: 10
|
38
|
+
:high_rate: 50
|
39
|
+
:rate_step: 10
|
40
|
+
|
41
|
+
- :server: www.apple.com
|
42
|
+
:uri: /
|
43
|
+
:num_conns: 50
|
44
|
+
:low_rate: 10
|
45
|
+
:high_rate: 50
|
46
|
+
:rate_step: 10
|
47
47
|
|
48
48
|
and run Hansel
|
49
49
|
|
50
|
-
|
50
|
+
hansel --verbose --format=octave
|
51
51
|
|
52
52
|
By default, the output is written into the ~/hansel_output directory. When the octave format is
|
53
53
|
specified, it uses the default template octave.m.erb in the project templates. Here is a sample
|
54
54
|
output from the previous job:
|
55
55
|
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
56
|
+
rate = [5, 10, 15, 20];
|
57
|
+
request_rate = [5.1, 9.3, 12.9, 15.8];
|
58
|
+
connection_rate = [5.1, 9.3, 12.9, 15.8];
|
59
|
+
reply_rate_avg = [0.0, 0.0, 0.0, 0.0];
|
60
|
+
reply_rate_max = [0.0, 0.0, 0.0, 0.0];
|
61
|
+
reply_time = [88.4, 93.4, 89.2, 89.1];
|
62
|
+
reply_rate_stddev = [0.0, 0.0, 0.0, 0.0];
|
63
|
+
errors = [0, 0, 0, 0];
|
64
|
+
|
65
|
+
plot(rate, request_rate, '-k*');
|
66
|
+
hold on;
|
67
|
+
plot(rate, connection_rate, '-kd');
|
68
|
+
hold on;
|
69
|
+
plot(rate, reply_rate_max, '-kp');
|
70
|
+
hold on;
|
71
|
+
plot(rate, reply_rate_max, '-k+');
|
72
|
+
hold on;
|
73
|
+
plot(rate, reply_rate_stddev, '-kh');
|
74
|
+
hold on;
|
75
|
+
plot(rate, reply_time, '-g*');
|
76
|
+
hold on;
|
77
|
+
plot(rate, errors, '-r*');
|
78
|
+
|
79
|
+
grid on;
|
80
|
+
|
81
|
+
axis([0 20 0 20]);
|
82
|
+
title('Hansel report for www.example.com:80/ (10 connections per run)')
|
83
|
+
xlabel('Demanded Request Rate');
|
84
|
+
legend('Request Rate', 'Connection Rate', 'Avg. reply rate', 'Max. reply rate', 'Reply rate StdDev', 'Reply time', 'Errors');
|
85
|
+
print('/Users/paulm/hansel_output/hansel-10.m.png', '-dpng')
|
86
|
+
|
87
87
|
Run octave on it will produce graph as a png file.
|
88
88
|
|
89
89
|
== Note on Patches/Pull Requests
|
90
|
-
|
90
|
+
|
91
91
|
* Fork the project.
|
92
92
|
* Make your feature addition or bug fix.
|
93
93
|
* Add tests for it. This is important so I don't break it in a
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.6
|
data/hansel.gemspec
CHANGED