From 8bdcd37ac44fe96d2c59424a24752f87f0444e36 Mon Sep 17 00:00:00 2001 From: Loic Guegan Date: Wed, 22 May 2019 11:24:17 +0200 Subject: Update paper --- src/g5k/clients.py | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100755 src/g5k/clients.py (limited to 'src/g5k/clients.py') diff --git a/src/g5k/clients.py b/src/g5k/clients.py new file mode 100755 index 0000000..db40996 --- /dev/null +++ b/src/g5k/clients.py @@ -0,0 +1,48 @@ +#!/usr/bin/python +from __future__ import division +import os,sys,random, time,datetime +from subprocess import Popen + +# Check script argument +if len(sys.argv) != 6: + print("Usage: "+sys.argv[0]+" ") + exit(1) + +# Init script parameters +serverIp=sys.argv[1] +nbSensors=int(sys.argv[2]) +nbSensorsFactor=int(sys.argv[3]) +effectiveNbSensors=nbSensors*nbSensorsFactor +requestPerSensor=int(sys.argv[4]) +sendInterval=int(sys.argv[5]) +avgSiteTemp=list() +for i in range(0,effectiveNbSensors): + avgSiteTemp.append(random.randint(-10,30)) + + +def insert(sensorId, value): + """ Send value of sensorId into the database """ + stamp=int(time.mktime(datetime.datetime.today().timetuple())) + insertCMD = "mysql -u user --password=mysql --host="+serverIp+" experiment -e" + insertCMD=insertCMD.split() + insertCMD.append("INSERT INTO temperature (id,stamp,val) VALUES("+str(sensorId)+","+str(stamp)+","+str(value)+");") + Popen(insertCMD) # Run command asynchronously + +def send(): + """ Send temperature of each sensors into the database """ + for i in range(0,effectiveNbSensors): + insert(i,random.gauss(avgSiteTemp[i], 3)) + + +# Print infos +print("Launching clients with:") +print(" - Mysql Server IP {:>20}".format(serverIp)) +print(" - Number of sensors {:>18}".format(effectiveNbSensors)) +print(" - Number of request per sensor {:>7}".format(effectiveNbSensors)) + +# Send data +for i in range(0, requestPerSensor): + send() + time.sleep(sendInterval) # We assume send() take no time + + -- cgit v1.2.3