Skip to content

Commit 81daf31

Browse files
author
saukymo
committed
Convert tab into space.
1 parent 863ef16 commit 81daf31

File tree

2 files changed

+492
-507
lines changed

2 files changed

+492
-507
lines changed

main.py

Lines changed: 102 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -7,108 +7,108 @@
77
from datetime import datetime
88

99
class AgentGroup():
10-
def __init__(self, queue, num_threads, run_time, rampup):
11-
self.queue = queue
12-
self.num_threads = num_threads
13-
self.run_time = run_time
14-
self.rampup = rampup
15-
self.details = []
16-
17-
def run(self):
18-
self.start_time = time.time()
19-
threads = []
20-
for idx in range(self.num_threads):
21-
spacing = 1.0 * self.rampup / self.num_threads
22-
if idx > 0:
23-
time.sleep(spacing)
24-
25-
agent = Agent(self.queue, idx, self.run_time, self.start_time)
26-
agent.daemon = True
27-
threads.append(agent)
28-
agent.start()
29-
30-
for agent in threads:
31-
agent.join()
32-
self.details.append("%5d\t%9.2f\t%8d\t%6d\t%14d\t%23.3f\t%23.3f" % (agent.thread_num, agent.real_start_time - self.start_time, agent.trans_count, agent.errors, agent.received_data, agent.avg_resp_time, agent.avg_throughput))
10+
def __init__(self, queue, num_threads, run_time, rampup):
11+
self.queue = queue
12+
self.num_threads = num_threads
13+
self.run_time = run_time
14+
self.rampup = rampup
15+
self.details = []
16+
17+
def run(self):
18+
self.start_time = time.time()
19+
threads = []
20+
for idx in range(self.num_threads):
21+
spacing = 1.0 * self.rampup / self.num_threads
22+
if idx > 0:
23+
time.sleep(spacing)
24+
25+
agent = Agent(self.queue, idx, self.run_time, self.start_time)
26+
agent.daemon = True
27+
threads.append(agent)
28+
agent.start()
29+
30+
for agent in threads:
31+
agent.join()
32+
self.details.append("%5d\t%9.2f\t%8d\t%6d\t%14d\t%23.3f\t%23.3f" % (agent.thread_num, agent.real_start_time - self.start_time, agent.trans_count, agent.errors, agent.received_data, agent.avg_resp_time, agent.avg_throughput))
3333

3434
class Agent(threading.Thread):
35-
"""
36-
Every single thread to run the test code.
37-
Test stastics put into threads queue.
38-
"""
39-
def __init__(self, queue, thread_num, run_time, start_time):
40-
threading.Thread.__init__(self)
41-
self.queue = queue
42-
self.thread_num = thread_num
43-
self.run_time = run_time
44-
self.start_time = start_time
45-
self.real_start_time = time.time()
46-
self.trans_count = 0
47-
self.received_data = 0
48-
self.errors = 0
49-
self.avg_resp_time = 0
50-
self.avg_throughput = 0
51-
52-
def run(self):
53-
elapsed_time = 0
54-
total_resp_time = 0
55-
while elapsed_time < self.run_time:
56-
error = ''
57-
start = time.time()
58-
resp_data = 0
59-
60-
try:
61-
connect = urllib2.urlopen(url)
62-
content = connect.read()
63-
resp_data = len(content)
64-
except Exception, e:
65-
error = str(e)
66-
67-
run_time = time.time() - start
68-
elapsed_time = time.time() - self.start_time
69-
70-
self.trans_count += 1
71-
self.received_data += resp_data
72-
if error != '':
73-
self.errors += 1
74-
total_resp_time += run_time
75-
76-
fields = (self.thread_num, elapsed_time, run_time, resp_data, error)
77-
# print fields
78-
self.queue.put(fields)
79-
80-
self.avg_resp_time = 1.0 * total_resp_time / self.trans_count
81-
self.avg_throughput = 1.0 * self.trans_count / (time.time() - self.real_start_time)
35+
"""
36+
Every single thread to run the test code.
37+
Test stastics put into threads queue.
38+
"""
39+
def __init__(self, queue, thread_num, run_time, start_time):
40+
threading.Thread.__init__(self)
41+
self.queue = queue
42+
self.thread_num = thread_num
43+
self.run_time = run_time
44+
self.start_time = start_time
45+
self.real_start_time = time.time()
46+
self.trans_count = 0
47+
self.received_data = 0
48+
self.errors = 0
49+
self.avg_resp_time = 0
50+
self.avg_throughput = 0
51+
52+
def run(self):
53+
elapsed_time = 0
54+
total_resp_time = 0
55+
while elapsed_time < self.run_time:
56+
error = ''
57+
start = time.time()
58+
resp_data = 0
59+
60+
try:
61+
connect = urllib2.urlopen(url)
62+
content = connect.read()
63+
resp_data = len(content)
64+
except Exception, e:
65+
error = str(e)
66+
67+
run_time = time.time() - start
68+
elapsed_time = time.time() - self.start_time
69+
70+
self.trans_count += 1
71+
self.received_data += resp_data
72+
if error != '':
73+
self.errors += 1
74+
total_resp_time += run_time
75+
76+
fields = (self.thread_num, elapsed_time, run_time, resp_data, error)
77+
# print fields
78+
self.queue.put(fields)
79+
80+
self.avg_resp_time = 1.0 * total_resp_time / self.trans_count
81+
self.avg_throughput = 1.0 * self.trans_count / (time.time() - self.real_start_time)
8282

8383
class QueueReader(threading.Thread):
84-
def __init__(self, queue):
85-
threading.Thread.__init__(self)
86-
self.queue = queue
87-
self.trans_count = 0
88-
self.error_count = 0
89-
self.elapsed_time = 0.0
90-
91-
def run(self):
92-
with open("results.csv", "w") as f:
93-
while True:
94-
try:
95-
agent_num, elapsed_time, run_time, resp_data, error = self.queue.get(False)
96-
self.trans_count += 1
97-
if error != '':
98-
error = '\\n'.join(error.splitlines())
99-
100-
self.error_count += 1
101-
f.write('%d, %d, %0.3f, %f, %d, %s,\n' % (self.trans_count, agent_num, elapsed_time, run_time, resp_data, error))
102-
# print agent_num, self.trans_count, elapsed_time, run_time, resp_data, error
103-
if elapsed_time > self.elapsed_time:
104-
self.elapsed_time = elapsed_time
105-
106-
if elapsed_time < test_duration:
107-
# print int(elapsed_time / interval_time), elapsed_time, interval_time
108-
interval_run_time[int(elapsed_time / interval_time)].append(run_time)
109-
f.flush()
110-
except Queue.Empty:
111-
time.sleep(.05)
84+
def __init__(self, queue):
85+
threading.Thread.__init__(self)
86+
self.queue = queue
87+
self.trans_count = 0
88+
self.error_count = 0
89+
self.elapsed_time = 0.0
90+
91+
def run(self):
92+
with open("results.csv", "w") as f:
93+
while True:
94+
try:
95+
agent_num, elapsed_time, run_time, resp_data, error = self.queue.get(False)
96+
self.trans_count += 1
97+
if error != '':
98+
error = '\\n'.join(error.splitlines())
99+
100+
self.error_count += 1
101+
f.write('%d, %d, %0.3f, %f, %d, %s,\n' % (self.trans_count, agent_num, elapsed_time, run_time, resp_data, error))
102+
# print agent_num, self.trans_count, elapsed_time, run_time, resp_data, error
103+
if elapsed_time > self.elapsed_time:
104+
self.elapsed_time = elapsed_time
105+
106+
if elapsed_time < test_duration:
107+
# print int(elapsed_time / interval_time), elapsed_time, interval_time
108+
interval_run_time[int(elapsed_time / interval_time)].append(run_time)
109+
f.flush()
110+
except Queue.Empty:
111+
time.sleep(.05)
112112

113113
def average(seq):
114114
avg = (float(sum(seq)) / len(seq))
@@ -159,7 +159,7 @@ def percentile(seq, percentile):
159159

160160
all_run_time = []
161161
for interval_time_list in interval_run_time:
162-
all_run_time.extend(interval_time_list)
162+
all_run_time.extend(interval_time_list)
163163

164164
print "\n===Summary==="
165165
print "transactions: %d hits" % (queue_reader.trans_count)
@@ -180,14 +180,14 @@ def percentile(seq, percentile):
180180
print "Interval Details (secs):"
181181
print "%8s\t%7s\t%7s\t%7s\t%7s\t%7s\t%7s\t%7s\t%7s" % ("interval", "count", "avg", "min", "50pct", "80pct", "90pct", "max", "stdev")
182182
for interval_num in range(interval):
183-
interval_list = interval_run_time[interval_num]
184-
print "%8d\t%7d\t%7.3f\t%7.3f\t%7.3f\t%7.3f\t%7.3f\t%7.3f\t%7.3f" % (interval_num, len(interval_list), average(interval_list), min(interval_list), percentile(interval_list, 50),\
183+
interval_list = interval_run_time[interval_num]
184+
print "%8d\t%7d\t%7.3f\t%7.3f\t%7.3f\t%7.3f\t%7.3f\t%7.3f\t%7.3f" % (interval_num, len(interval_list), average(interval_list), min(interval_list), percentile(interval_list, 50),\
185185
percentile(interval_list, 80), percentile(interval_list, 90), max(interval_list), standard_dev(interval_list))
186186

187187
print "\n===Agent Details==="
188188
print "Agent\tStarttime\tRequests\tErrors\tBytes received\tAvg Response Time(secs)\tAvg throughput(req/sec)"
189189
for agent_detail in ag.details:
190-
print agent_detail
190+
print agent_detail
191191

192192

193193

0 commit comments

Comments
 (0)