summaryrefslogtreecommitdiff
path: root/query
diff options
context:
space:
mode:
Diffstat (limited to 'query')
-rw-r--r--query/__init__.py14
-rw-r--r--query/chart_factory.js11
-rw-r--r--query/chart_overhead_compare.js7
-rw-r--r--query/main.html2
-rw-r--r--query/main.js4
5 files changed, 21 insertions, 17 deletions
diff --git a/query/__init__.py b/query/__init__.py
index c72222b..dc3339c 100644
--- a/query/__init__.py
+++ b/query/__init__.py
@@ -35,16 +35,10 @@ class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
arg_strs = dict((str(k), str(v)) for k, v in args.iteritems())
s.wfile.write(json.dumps(arg_strs))
else:
- #why the fuck does no OS ever patch boost when there is a bug
- #https://svn.boost.org/trac/boost/ticket/6785
- #serialize the path args into xml -- but I just wanted json
- def xml_from_qs(k, v):
- if not isinstance(v, list): v = [v]
- return ''.join(['<%s>%s</%s>'%(k, v_i, k) for v_i in v])
- query_args = [xml_from_qs(k,v) for k,v in urlparse.parse_qs(o.query).iteritems()]
- query_args.append(xml_from_qs('path', path))
- xml_args = xml_from_qs('args', ''.join(query_args))
- s.wfile.write(args['top_block'].query(xml_args))
+ query_args = dict([(k,v) for k,v in urlparse.parse_qs(o.query).iteritems()])
+ query_args['path'] = path
+ json_args = json.dumps(query_args)
+ s.wfile.write(args['top_block'].query(json_args))
return
#clean up path for filesystem
diff --git a/query/chart_factory.js b/query/chart_factory.js
index 8b9656a..f3e02a7 100644
--- a/query/chart_factory.js
+++ b/query/chart_factory.js
@@ -39,7 +39,14 @@ function gras_chart_factory_update(registry, point)
registry.point = point; //store last data point
$.each(registry.active_charts, function(index, chart_info)
{
- chart_info.chart.update(point);
+ try
+ {
+ chart_info.chart.update(point);
+ }
+ catch(err)
+ {
+ //jQuery.error("gras_chart_factory_update error: " + err.message);
+ }
});
}
@@ -251,7 +258,7 @@ function gras_chart_factory_init(registry)
$.getJSON('/blocks.json', function(data)
{
var container = $('#chart_designer_blocks');
- $.each(data.blocks, function(index, id)
+ $.each(data.blocks, function(id, attrs)
{
registry.block_ids.push(id);
var cb_id = "chart_designer_blocks " + id;
diff --git a/query/chart_overhead_compare.js b/query/chart_overhead_compare.js
index 0ec9070..290b15d 100644
--- a/query/chart_overhead_compare.js
+++ b/query/chart_overhead_compare.js
@@ -23,8 +23,11 @@ GrasChartOverheadCompare.prototype.update = function(point)
data_set.push(['Task', 'Percent']);
$.each(this.ids, function(index, id)
{
- var percents = gras_extract_percent_times(point, id);
- data_set.push([id, percents['total']]);
+ if (id in point.blocks) //skip this ID if it didnt show up in the data
+ {
+ var percents = gras_extract_percent_times(point, id);
+ data_set.push([id, percents['total']]);
+ }
});
var data = google.visualization.arrayToDataTable(data_set)
diff --git a/query/main.html b/query/main.html
index 3fc3508..78f9227 100644
--- a/query/main.html
+++ b/query/main.html
@@ -20,7 +20,7 @@
<script type="text/javascript" src="/main.js"></script>
<script type="text/javascript">
google.load('visualization', '1.0', {'packages':['corechart']});
- google.setOnLoadCallback(gras_stats_main);
+ google.setOnLoadCallback(gras_query_main);
</script>
</head>
diff --git a/query/main.js b/query/main.js
index b17af63..3b2fe31 100644
--- a/query/main.js
+++ b/query/main.js
@@ -33,7 +33,7 @@ var gras_query_stats = function(registry)
url: "/stats.json",
dataType: "json",
traditional: true, //needed to parse data
- data: {block:gras_chart_factory_active_blocks(registry)},
+ data: {blocks:gras_chart_factory_active_blocks(registry)},
success: function(response)
{
registry.online = true;
@@ -61,7 +61,7 @@ var gras_query_stats = function(registry)
/***********************************************************************
* Init
**********************************************************************/
-var gras_stats_main = function()
+var gras_query_main = function()
{
//create a new registry - storage for gui state
var registry = new GrasStatsRegistry();