Files
@ 56a9eaf5e882
Branch filter:
Location: light9/bin/collector_loadtest.py - annotation
56a9eaf5e882
2.0 KiB
text/x-python
rough ports from coffee to ts. untested
2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 3c523c71da29 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 4294ed82ee16 7772cc48e016 7772cc48e016 4294ed82ee16 f066d6e874db 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 7772cc48e016 4294ed82ee16 4294ed82ee16 4294ed82ee16 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 2951a690f1ba 7772cc48e016 4294ed82ee16 4294ed82ee16 7772cc48e016 4294ed82ee16 7772cc48e016 4294ed82ee16 4294ed82ee16 4294ed82ee16 4294ed82ee16 f066d6e874db 4294ed82ee16 4294ed82ee16 4294ed82ee16 7772cc48e016 7772cc48e016 4294ed82ee16 4294ed82ee16 7772cc48e016 4294ed82ee16 4294ed82ee16 | #!bin/python
import logging
import time
from typing import cast
import twisted.internet.reactor
from light9.collector.collector_client import sendToCollector
from light9.effect.settings import DeviceSettings
from light9.namespaces import DEV, L9
from light9.run_local import log
from twisted.internet.interfaces import IReactorCore
reactor = cast(IReactorCore, twisted.internet.reactor)
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:8202/",
session,
DeviceSettings(
graph=None,
settingsList=[
[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()
|