Files
@ 4294ed82ee16
Branch filter:
Location: light9/bin/collector_loadtest.py - annotation
4294ed82ee16
1.6 KiB
text/x-python
move collector_loadtest and arrange for collector to be able to run the test itself, but that last part isn't working. you can run collector and collector_loadtest in two shells, though
Ignore-this: 9f32a0cb0ba3c1b29ccbe7330ed15bf4
Ignore-this: 9f32a0cb0ba3c1b29ccbe7330ed15bf4
4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 | import sys
sys.path.append('bin')
from run_local import log
from light9.effect.sequencer import sendToCollector, sendToCollectorZmq
from light9.namespaces import L9, DEV
from twisted.internet import reactor
import time
import logging
log.setLevel(logging.DEBUG)
def loadTest():
print "scheduling loadtest"
n = 2500
times = [None] * n
session = "loadtest%s" % time.time()
offset = 0
for i in range(n):
def send(i):
if i % 100 == 0:
log.info('sendToCollector %s', i)
d = sendToCollector("http://localhost:999999/", session,
[[DEV["backlight1"], L9["color"], "#ffffff"],
[DEV["backlight2"], L9["color"], "#ffffff"],
[DEV["backlight3"], L9["color"], "#ffffff"],
[DEV["backlight4"], L9["color"], "#ffffff"],
[DEV["backlight5"], L9["color"], "#ffffff"],
[DEV["down2"], L9["color"], "#ffffff"],
[DEV["down3"], L9["color"], "#ffffff"],
[DEV["down4"], L9["color"], "#ffffff"],
[DEV["houseSide"], L9["level"], .8],
[DEV["backlight5"], L9["uv"], 0.011]])
def ontime(dt, i=i):
times[i] = dt
d.addCallback(ontime)
reactor.callLater(offset, send, i)
offset += .002
def done():
print "loadtest done"
with open('/tmp/times', 'w') as f:
f.write(''.join('%s\n' % t for t in times))
reactor.stop()
reactor.callLater(offset+.5, done)
reactor.run()
if __name__ == '__main__':
loadTest()
|