[Checkins] SVN: zc.resumelb/trunk/src/zc/resumelb/ - Changed the way tracelog records are identified to reflect lb
jim
cvs-admin at zope.org
Thu May 3 15:28:52 UTC 2012
Log message for revision 125632:
- Changed the way tracelog records are identified to reflect lb
request numbers. Records are disambiguated by including an lb
identifier as a prefix. For example "1.22" indicated request number
22 from lb 1.
Changed:
U zc.resumelb/trunk/src/zc/resumelb/README.txt
U zc.resumelb/trunk/src/zc/resumelb/worker.py
U zc.resumelb/trunk/src/zc/resumelb/worker.test
-=-
Modified: zc.resumelb/trunk/src/zc/resumelb/README.txt
===================================================================
--- zc.resumelb/trunk/src/zc/resumelb/README.txt 2012-05-03 10:24:05 UTC (rev 125631)
+++ zc.resumelb/trunk/src/zc/resumelb/README.txt 2012-05-03 15:28:47 UTC (rev 125632)
@@ -242,6 +242,14 @@
Change History
==============
+0.5.0 (2012-05-??)
+------------------
+
+- Changed the way tracelog records are identified to reflect lb
+ request numbers. Records are disambiguated by including an lb
+ identifier as a prefix. For example "1.22" indicated request number
+ 22 from lb 1.
+
0.4.0 (2012-04-27)
------------------
Modified: zc.resumelb/trunk/src/zc/resumelb/worker.py
===================================================================
--- zc.resumelb/trunk/src/zc/resumelb/worker.py 2012-05-03 10:24:05 UTC (rev 125631)
+++ zc.resumelb/trunk/src/zc/resumelb/worker.py 2012-05-03 15:28:47 UTC (rev 125632)
@@ -33,6 +33,7 @@
history=None, max_skill_age=None,
resume_file=None, threads=None, tracelog=None,
tracelog_key='tracelog'):
+
self.app = app
self.update_settings(dict(history=history, max_skill_age=max_skill_age))
self.resume_file = resume_file
@@ -58,7 +59,6 @@
else:
pool_apply = None
- self.trno = 0
def call_app(trno, env):
response = [0]
env['zc.resumelb.time'] = time.time()
@@ -159,6 +159,12 @@
def handle_connection(self, sock, addr):
try:
conn = zc.resumelb.util.Worker()
+ # compute a short unique id for the connection/lb
+ connid = 0
+ while [c for c in self.connections if c.id == connid]:
+ connid += 1
+ conn.id = connid
+ logger.info("Received connection (%s) from %s", connid, addr)
self.connections.add(conn)
readers = conn.connected(sock, addr)
conn.put((0, self.resume))
@@ -187,8 +193,7 @@
def handle(self, conn, rno, get, env):
try:
if self.tracelog:
- self.trno += 1
- trno = self.trno
+ trno = "%s.%s" % (conn.id, rno)
query_string = env.get('QUERY_STRING')
url = env['PATH_INFO']
if query_string:
Modified: zc.resumelb/trunk/src/zc/resumelb/worker.test
===================================================================
--- zc.resumelb/trunk/src/zc/resumelb/worker.test 2012-05-03 10:24:05 UTC (rev 125631)
+++ zc.resumelb/trunk/src/zc/resumelb/worker.test 2012-05-03 15:28:47 UTC (rev 125632)
@@ -598,26 +598,26 @@
>>> write_message(worker_socket, 11, newenv('', '/sleep.html?dur=.1'))
>>> gevent.sleep(.01)
- B 1 2012-02-05 01:02:03.000456 GET /sleep.html?dur=.1
+ B 0.11 2012-02-05 01:02:03.000456 GET /sleep.html?dur=.1
>>> now += datetime.timedelta(microseconds=10000)
>>> write_message(worker_socket, 22,
... newenv('', '/sleep.html?dur=.1&size=111'))
>>> gevent.sleep(.01)
- B 2 2012-02-05 01:02:03.010456 GET /sleep.html?dur=.1&size=111
+ B 0.22 2012-02-05 01:02:03.010456 GET /sleep.html?dur=.1&size=111
>>> now += datetime.timedelta(microseconds=10000)
>>> write_message(worker_socket, 22, '')
>>> gevent.sleep(.01)
- I 2 2012-02-05 01:02:03.020456
- C 2 2012-02-05 01:02:03.020456
+ I 0.22 2012-02-05 01:02:03.020456
+ C 0.22 2012-02-05 01:02:03.020456
>>> now += datetime.timedelta(microseconds=10000)
>>> write_message(worker_socket, 11, '')
>>> read_message(worker_socket) # doctest: +ELLIPSIS
- I 1 2012-02-05 01:02:03.030456
- T 2 2012-02-05 01:02:03.030456 test
- - 2 2012-02-05 01:02:03.030456 test2
- A 2 2012-02-05 01:02:03.030456 200 OK 1332
- C 1 2012-02-05 01:02:03.030456
- E 2 2012-02-05 01:02:03.030456
+ I 0.11 2012-02-05 01:02:03.030456
+ T 0.22 2012-02-05 01:02:03.030456 test
+ - 0.22 2012-02-05 01:02:03.030456 test2
+ A 0.22 2012-02-05 01:02:03.030456 200 OK 1332
+ C 0.11 2012-02-05 01:02:03.030456
+ E 0.22 2012-02-05 01:02:03.030456
(22, ('200 OK', [('Content-Length', ...
>>> while 1:
@@ -628,10 +628,10 @@
... if not data: break
>>> read_message(worker_socket) # doctest: +ELLIPSIS
- T 1 2012-02-05 01:02:03.030456 test
- - 1 2012-02-05 01:02:03.030456 test2
- A 1 2012-02-05 01:02:03.030456 200 OK 12
- E 1 2012-02-05 01:02:03.030456
+ T 0.11 2012-02-05 01:02:03.030456 test
+ - 0.11 2012-02-05 01:02:03.030456 test2
+ A 0.11 2012-02-05 01:02:03.030456 200 OK 12
+ E 0.11 2012-02-05 01:02:03.030456
(11, ('200 OK', [...('Content-Length', '12')]))
Note that the tracelog request ids are distinct from the request
@@ -645,11 +645,11 @@
>>> _ = read_message(worker_socket2)
>>> write_message(worker_socket2, 22, newenv('', '/hi.html'), '')
>>> read_message(worker_socket2) # doctest: +ELLIPSIS
- B 3 2012-02-05 01:02:03.040456 GET /hi.html
- I 3 2012-02-05 01:02:03.040456
- C 3 2012-02-05 01:02:03.040456
- A 3 2012-02-05 01:02:03.040456 200 OK 79
- E 3 2012-02-05 01:02:03.040456
+ B 1.22 2012-02-05 01:02:03.040456 GET /hi.html
+ I 1.22 2012-02-05 01:02:03.040456
+ C 1.22 2012-02-05 01:02:03.040456
+ A 1.22 2012-02-05 01:02:03.040456 200 OK 79
+ E 1.22 2012-02-05 01:02:03.040456
(22, ('200 OK', [('Content-Type', ...
More information about the checkins
mailing list