Added compact data retrieval method to avoid unnecessary data transmission/plotting.
[smonitor.git] / monitor / www_templates / host.html
blob238eee2f9d629ffa94c5f01c1b4cf23b8ec00f87
1 {% extends "base.html" %}
3 {% block header%}
4 <!--[if lt IE 9]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]-->
5 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/jquery-latest.min.js"></script>
6 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/jquery.jqplot.min.js"></script>
7 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.highlighter.min.js"></script>
8 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.cursor.min.js"></script>
9 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.dateAxisRenderer.min.js"></script>
10 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.canvasTextRenderer.min.js"></script>
11 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.canvasAxisTextRenderer.min.js"></script>
12 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.canvasTickRenderer.min.js"></script>
13 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.canvasAxisTickRenderer.min.js"></script>
14 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.canvasAxisLabelRenderer.min.js"></script>
15 <script type="text/javascript" src="http://www.students.ic.unicamp.br/~ra109228/media/plugins/jqplot.pointLabels.min.js"></script>
17 <link rel="stylesheet" type="text/css" href="http://www.students.ic.unicamp.br/~ra109228/media/jquery.jqplot.css" />
20 <style type="text/css">
21 .plotdiv {
22 margin: 3px 20px;
23 height:400px;
24 width:800px;
26 </style>
28 {% endblock header%}
30 {% block body %}
31 {% if not data %}
32 <h1>Empty dataset. Check hostname</h1>
33 {% else %}
35 {% for e in data %}
36 <div id="plot{{loop.index}}" class="plotdiv"></div>
37 {% endfor %}
40 <script type="text/javascript">
41 {% for element in data %}
42 var data = [[
43 {% for point in element[1].get_all_compact() %}
44 [new Date({{point.timestamp}}000), {{point.value}}],
45 {% endfor %}
46 ]];
48 $.jqplot('plot{{loop.index}}', data, {
49 title: '{{element[0]}}',
50 axesDefaults: {
51 labelRenderer: $.jqplot.CanvasAxisLabelRenderer,
52 tickRenderer: $.jqplot.CanvasAxisTickRenderer,
54 highlighter: {
55 show: true,
56 sizeAdjust: 7.5,
58 axes: {
59 xaxis: {
60 label: "Time",
61 renderer: $.jqplot.DateAxisRenderer,
62 tickRenderer: $.jqplot.CanvasAxisTickRenderer,
63 tickOptions: { formatString: '%T', angle: -30 },
65 yaxis: {
66 label: "Values",
67 {% set max = element[1].get_max_value() %}
68 {% set min = element[1].get_min_value() %}
69 {% if max == min %}
70 max: ({{max}} + 0.1) * 1.1,
71 min: ({{min}} - 0.1) * 0.9,
72 {% endif %}
75 });
76 {% endfor %}
78 </script>
80 {% endif %}
81 {% endblock body %}