Пример #1
0
def get_throughput_data(request, taskname=None):
    all_data = [] 
    description = {}
    description['timestamp'] = ("DateTime", "timestamp")
    description['tasks'] = ("number", "tasks")
    
    now = datetime.datetime.now()
    timerange = (now-datetime.timedelta(seconds=120), now)
    interval = 2
    throughputs = calculate_throughputs(taskname, timerange, interval)
    
    for i, p in enumerate(throughputs):
        data = {}
        tdiff = now-datetime.timedelta(seconds=120)
        data['timestamp'] = tdiff + datetime.timedelta(seconds=interval*i)
        data['tasks'] = p
        all_data.append(data)

    data_table = gviz_api.DataTable(description)
    data_table.LoadData(all_data)

    if "tqx" in request.GET:
        tqx = request.GET['tqx']
        params = dict([p.split(':') for p in tqx.split(';')])
        reqId = params['reqId'] 
        return HttpResponse(
                    data_table.ToJSonResponse(
                        columns_order=("timestamp", "tasks"),
                        req_id=reqId)
                    )
    return HttpResponse(
                data_table.ToJSonResponse(
                    columns_order=("timestamp", "tasks"))
                )
Пример #2
0
def view_throughputs(request, taskname=None):
    # Simple view, mostly for testing purposes at this point.
    now = datetime.datetime.now()
    timerange = (now-datetime.timedelta(seconds=120), now)
    interval = 15
    throughputs = calculate_throughputs(taskname, timerange, interval)
    return HttpResponse(str(throughputs))
Пример #3
0
 def test_basic(self):
     taskname = None
     now = datetime.datetime.now()
     timerange = (now-datetime.timedelta(seconds=45), now)
     interval = 5
     seq = calculate_throughputs(taskname, timerange, interval)
     
     self.assertEquals(len(seq),9)  # 9 = 45/5
     self.assertEquals(sum(seq), 0.)
Пример #4
0
 def test_oneTask(self):
     taskname = None
     tasks.simple_test.apply_async()
     time.sleep(4.0)
     now = datetime.datetime.now()
     timerange = (now-datetime.timedelta(seconds=45), now)
     interval = 5
     seq = calculate_throughputs(taskname, timerange, interval)
     
     ##print seq
     self.assertEquals(len(seq),9)  # 9 = 45/5
     self.assertTrue(sum(seq) > 0.)