| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- window.addEvent('domready', function() {
- 'use strict';
- new Request.JSON({
- 'url': 'http://localhost:8892/v1/1/data/1?start=2014-04-19&end=2014-04-19',
- 'onSuccess': graph_stats,
- }).get();
- function graph_stats(data) {
- Object.each(data, function(fields, date) {
- if (fields == null)
- return;
- Object.each(fields, function(subfields, field) {
- if (field == 'disk')
- return;
- graph_stat(field, subfields);
- });
- });
- }
- var colors = {
- 'cpu': {
- 'idle': '#3aa',
- 'user': '#33a',
- 'system': '#aa3',
- },
- 'mem': {
- 'used': '#a33',
- 'buffers': '#3aa',
- 'cached': '#33a',
- },
- 'net': {
- 'bytes_recv': '#33a',
- 'bytes_sent': '#3a3',
- },
- };
- function graph_stat(field, data) {
- var series = [];
- Object.each(data, function(array, k) {
- array = array.map(function(val, i) {
- return {'x': i, 'y': val};
- })
- var serie = {
- 'name': field + '.' + k,
- 'data': array,
- 'color': colors[field][k] || '#111',
- };
- series.push(serie);
- });
- var graph_div = new Element('div');
- var legend_div = new Element('div');
- var graph = new Rickshaw.Graph({
- 'element': graph_div,
- 'width': 500,
- 'height': 200,
- 'renderer': 'area',
- 'stroke': true,
- 'series': series,
- });
- new Rickshaw.Graph.Legend({
- 'graph': graph,
- 'element': legend_div,
- });
- new Rickshaw.Graph.HoverDetail({
- 'graph': graph,
- });
- new Rickshaw.Graph.Axis.Time({
- 'graph': graph,
- 'timeUnit': new Rickshaw.Fixtures.Time().unit('minute'),
- });
- new Rickshaw.Graph.Axis.Y({
- 'graph': graph,
- 'tickFormat': Rickshaw.Fixtures.Number.formatKMBT,
- });
- graph.render();
- $('graphs').adopt(graph_div, legend_div, new Element('br'));
- }
- });
|