You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by tb...@apache.org on 2013/04/10 15:19:10 UTC

svn commit: r1466477 - in /incubator/ambari/trunk: ./ ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/ ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/ ambari-server/src/test/resources/

Author: tbeerbower
Date: Wed Apr 10 13:19:09 2013
New Revision: 1466477

URL: http://svn.apache.org/r1466477
Log:
AMBARI-1856 - Queries for metrics to populate the dashboard graphs don't work with updated Ganglia.

Added:
    incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProviderTest.java
    incubator/ambari/trunk/ambari-server/src/test/resources/temporal_ganglia_report_data.json
Modified:
    incubator/ambari/trunk/CHANGES.txt
    incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaMetric.java
    incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProvider.java
    incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProviderTest.java
    incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/TestStreamProvider.java

Modified: incubator/ambari/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/CHANGES.txt?rev=1466477&r1=1466476&r2=1466477&view=diff
==============================================================================
--- incubator/ambari/trunk/CHANGES.txt (original)
+++ incubator/ambari/trunk/CHANGES.txt Wed Apr 10 13:19:09 2013
@@ -677,7 +677,10 @@ Trunk (unreleased changes):
 
  BUG FIXES
 
- AMBARI-1862. Nagios credentials are freely available at ambari-agent.log. 
+ AMBARI-1856. Queries for metrics to populate the dashboard graphs don't work
+ with updated Ganglia. (tbeerbower)
+
+ AMBARI-1862. Nagios credentials are freely available at ambari-agent.log.
  (smohanty)
 
  AMBARI-1726. It seems upgrades available at the FE is hard-coded to 1.3.0. 

Modified: incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaMetric.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaMetric.java?rev=1466477&r1=1466476&r2=1466477&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaMetric.java (original)
+++ incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaMetric.java Wed Apr 10 13:19:09 2013
@@ -18,6 +18,9 @@
 
 package org.apache.ambari.server.controller.ganglia;
 
+import org.codehaus.jackson.annotate.JsonIgnoreProperties;
+@JsonIgnoreProperties(ignoreUnknown = true)
+
 
 /**
  * Data structure for temporal data returned from Ganglia Web.

Modified: incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProvider.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProvider.java?rev=1466477&r1=1466476&r2=1466477&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProvider.java (original)
+++ incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProvider.java Wed Apr 10 13:19:09 2013
@@ -52,8 +52,6 @@ public class GangliaReportPropertyProvid
   protected final static Logger LOG =
       LoggerFactory.getLogger(GangliaReportPropertyProvider.class);
 
-  private static final String GANGLIA_CLUSTER_NAME = "HDPSlaves";
-
 
   // ----- Constructors ------------------------------------------------------
 
@@ -217,9 +215,7 @@ public class GangliaReportPropertyProvid
 
     sb.append("http://").
         append(hostProvider.getGangliaCollectorHostName(clusterName)).
-        append("/ganglia/graph.php?c=").
-        append(GANGLIA_CLUSTER_NAME).
-        append("&g=").
+        append("/ganglia/graph.php?g=").
         append(report).
         append("&json=1");
 

Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProviderTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProviderTest.java?rev=1466477&r1=1466476&r2=1466477&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProviderTest.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProviderTest.java Wed Apr 10 13:19:09 2013
@@ -43,8 +43,8 @@ public class GangliaPropertyProviderTest
   private static final String COMPONENT_NAME_PROPERTY_ID = PropertyHelper.getPropertyId("HostRoles", "component_name");
 
   @Test
-  public void testGetResources() throws Exception {
-    TestStreamProvider streamProvider  = new TestStreamProvider();
+  public void testPopulateResources() throws Exception {
+    TestStreamProvider streamProvider  = new TestStreamProvider("temporal_ganglia_data.txt");
     TestGangliaHostProvider hostProvider = new TestGangliaHostProvider();
 
     GangliaPropertyProvider propertyProvider = new GangliaHostComponentPropertyProvider(
@@ -116,8 +116,8 @@ public class GangliaPropertyProviderTest
 
 
   @Test
-  public void testGetManyResources() throws Exception {
-    TestStreamProvider streamProvider  = new TestStreamProvider();
+  public void testPopulateManyResources() throws Exception {
+    TestStreamProvider streamProvider  = new TestStreamProvider("temporal_ganglia_data.txt");
     TestGangliaHostProvider hostProvider = new TestGangliaHostProvider();
 
     GangliaPropertyProvider propertyProvider = new GangliaHostPropertyProvider(
@@ -160,7 +160,7 @@ public class GangliaPropertyProviderTest
 
   @Test
   public void testPopulateResources__LargeNumberOfHostResources() throws Exception {
-    TestStreamProvider streamProvider  = new TestStreamProvider();
+    TestStreamProvider streamProvider  = new TestStreamProvider("temporal_ganglia_data.txt");
     TestGangliaHostProvider hostProvider = new TestGangliaHostProvider();
 
     GangliaPropertyProvider propertyProvider = new GangliaHostPropertyProvider(

Added: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProviderTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProviderTest.java?rev=1466477&view=auto
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProviderTest.java (added)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/GangliaReportPropertyProviderTest.java Wed Apr 10 13:19:09 2013
@@ -0,0 +1,78 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.ambari.server.controller.ganglia;
+
+import org.apache.ambari.server.controller.internal.ResourceImpl;
+import org.apache.ambari.server.controller.internal.TemporalInfoImpl;
+import org.apache.ambari.server.controller.spi.Request;
+import org.apache.ambari.server.controller.spi.Resource;
+import org.apache.ambari.server.controller.spi.TemporalInfo;
+import org.apache.ambari.server.controller.utilities.PropertyHelper;
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Test the Ganglia report property provider.
+ */
+public class GangliaReportPropertyProviderTest {
+
+  private static final String PROPERTY_ID = PropertyHelper.getPropertyId("metrics/load", "Procs");
+  private static final String CLUSTER_NAME_PROPERTY_ID = PropertyHelper.getPropertyId("Clusters", "cluster_name");
+
+  @Test
+  public void testPopulateResources() throws Exception {
+
+    TestStreamProvider streamProvider    = new TestStreamProvider("temporal_ganglia_report_data.json");
+    TestGangliaHostProvider hostProvider = new TestGangliaHostProvider();
+
+    GangliaReportPropertyProvider propertyProvider = new GangliaReportPropertyProvider(
+        PropertyHelper.getGangliaPropertyIds(Resource.Type.Cluster),
+        streamProvider,
+        hostProvider,
+        CLUSTER_NAME_PROPERTY_ID);
+
+    Resource resource = new ResourceImpl(Resource.Type.Cluster);
+
+    resource.setProperty(CLUSTER_NAME_PROPERTY_ID, "c1");
+
+    // only ask for one property
+    Map<String, TemporalInfo> temporalInfoMap = new HashMap<String, TemporalInfo>();
+    temporalInfoMap.put(PROPERTY_ID, new TemporalInfoImpl(10L, 20L, 1L));
+    Request request = PropertyHelper.getReadRequest(Collections.singleton(PROPERTY_ID), temporalInfoMap);
+
+    Assert.assertEquals(1, propertyProvider.populateResources(Collections.singleton(resource), request, null).size());
+
+    Assert.assertEquals("http://domU-12-31-39-0E-34-E1.compute-1.internal/ganglia/graph.php?g=load_report&json=1",
+        streamProvider.getLastSpec());
+
+    Assert.assertEquals(2, PropertyHelper.getProperties(resource).size());
+    Assert.assertNotNull(resource.getPropertyValue(PROPERTY_ID));
+  }
+
+  private static class TestGangliaHostProvider implements GangliaHostProvider {
+
+    @Override
+    public String getGangliaCollectorHostName(String clusterName) {
+      return "domU-12-31-39-0E-34-E1.compute-1.internal";
+    }
+  }
+}

Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/TestStreamProvider.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/TestStreamProvider.java?rev=1466477&r1=1466476&r2=1466477&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/TestStreamProvider.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/ganglia/TestStreamProvider.java Wed Apr 10 13:19:09 2013
@@ -25,12 +25,17 @@ import java.io.InputStream;
 
 public class TestStreamProvider implements StreamProvider {
 
+  private final String fileName;
   private String lastSpec;
 
+  public TestStreamProvider(String fileName) {
+    this.fileName = fileName;
+  }
+
   @Override
   public InputStream readFrom(String spec) throws IOException {
     lastSpec = spec;
-    return ClassLoader.getSystemResourceAsStream("temporal_ganglia_data.txt");
+    return ClassLoader.getSystemResourceAsStream(fileName);
   }
 
   public String getLastSpec() {

Added: incubator/ambari/trunk/ambari-server/src/test/resources/temporal_ganglia_report_data.json
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/resources/temporal_ganglia_report_data.json?rev=1466477&view=auto
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/resources/temporal_ganglia_report_data.json (added)
+++ incubator/ambari/trunk/ambari-server/src/test/resources/temporal_ganglia_report_data.json Wed Apr 10 13:19:09 2013
@@ -0,0 +1,970 @@
+[
+  {
+    "ds_name":"a0",
+    "cluster_name":"",
+    "graph_type":"stack",
+    "host_name":"",
+    "metric_name":"1-min",
+    "color":"#BBBBBB",
+    "datapoints":[
+      [1.95, 1365534060],
+      [1.95, 1365534075],
+      [0.67, 1365534090],
+      [0.67, 1365534105],
+      [0.67, 1365534120],
+      [0.67, 1365534135],
+      [0.67, 1365534150],
+      [0.67, 1365534165],
+      [0.57666666667, 1365534180],
+      [0.57, 1365534195],
+      [0.57, 1365534210],
+      [0.57, 1365534225],
+      [0.57, 1365534240],
+      [0.57, 1365534255],
+      [0.66333333333, 1365534270],
+      [0.67, 1365534285],
+      [0.67, 1365534300],
+      [0.67, 1365534315],
+      [0.67, 1365534330],
+      [0.67, 1365534345],
+      [1.8, 1365534360],
+      [1.8, 1365534375],
+      [1.8, 1365534390],
+      [1.8, 1365534405],
+      [1.8, 1365534420],
+      [1.734, 1365534435],
+      [0.81, 1365534450],
+      [0.81, 1365534465],
+      [0.81, 1365534480],
+      [0.81, 1365534495],
+      [0.81, 1365534510],
+      [0.81933333333, 1365534525],
+      [0.95, 1365534540],
+      [0.95, 1365534555],
+      [0.95, 1365534570],
+      [0.95, 1365534585],
+      [0.95, 1365534600],
+      [0.92133333333, 1365534615],
+      [0.52, 1365534630],
+      [0.52, 1365534645],
+      [1.91, 1365534660],
+      [1.91, 1365534675],
+      [1.91, 1365534690],
+      [1.91, 1365534705],
+      [1.91, 1365534720],
+      [1.91, 1365534735],
+      [3.32, 1365534750],
+      [3.32, 1365534765],
+      [3.32, 1365534780],
+      [3.32, 1365534795],
+      [3.32, 1365534810],
+      [3.32, 1365534825],
+      [1.08, 1365534840],
+      [1.08, 1365534855],
+      [1.08, 1365534870],
+      [1.08, 1365534885],
+      [1.08, 1365534900],
+      [1.08, 1365534915],
+      [0.77666666667, 1365534930],
+      [0.73, 1365534945],
+      [0.73, 1365534960],
+      [0.73, 1365534975],
+      [0.73, 1365534990],
+      [0.73, 1365535005],
+      [0.73, 1365535020],
+      [0.73, 1365535035],
+      [0.73, 1365535050],
+      [0.73, 1365535065],
+      [0.73, 1365535080],
+      [0.73, 1365535095],
+      [0.674, 1365535110],
+      [0.66, 1365535125],
+      [0.66, 1365535140],
+      [0.66, 1365535155],
+      [0.66, 1365535170],
+      [0.66, 1365535185],
+      [0.55333333333, 1365535200],
+      [0.5, 1365535215],
+      [0.5, 1365535230],
+      [0.5, 1365535245],
+      [0.5, 1365535260],
+      [0.5, 1365535275],
+      [0.72, 1365535290],
+      [0.83, 1365535305],
+      [0.83, 1365535320],
+      [0.83, 1365535335],
+      [0.83, 1365535350],
+      [0.83, 1365535365],
+      [0.73933333333, 1365535380],
+      [0.66, 1365535395],
+      [0.66, 1365535410],
+      [0.66, 1365535425],
+      [0.66, 1365535440],
+      [0.66, 1365535455],
+      [0.63866666667, 1365535470],
+      [0.62, 1365535485],
+      [0.62, 1365535500],
+      [0.62, 1365535515],
+      [0.62, 1365535530],
+      [0.62, 1365535545],
+      [0.80666666667, 1365535560],
+      [0.97, 1365535575],
+      [0.97, 1365535590],
+      [0.97, 1365535605],
+      [0.97, 1365535620],
+      [0.97, 1365535635],
+      [0.99333333333, 1365535650],
+      [1.02, 1365535665],
+      [1.02, 1365535680],
+      [1.02, 1365535695],
+      [1.02, 1365535710],
+      [1.02, 1365535725],
+      [0.87533333333, 1365535740],
+      [0.71, 1365535755],
+      [0.71, 1365535770],
+      [0.71, 1365535785],
+      [0.71, 1365535800],
+      [0.71, 1365535815],
+      [0.70466666667, 1365535830],
+      [0.7, 1365535845],
+      [0.7, 1365535860],
+      [0.7, 1365535875],
+      [0.7, 1365535890],
+      [0.7, 1365535905],
+      [0.52733333333, 1365535920],
+      [0.33, 1365535935],
+      [0.33, 1365535950],
+      [0.33, 1365535965],
+      [0.33, 1365535980],
+      [0.33, 1365535995],
+      [0.58066666667, 1365536010],
+      [0.8, 1365536025],
+      [0.8, 1365536040],
+      [0.8, 1365536055],
+      [0.8, 1365536070],
+      [0.8, 1365536085],
+      [1.632, 1365536100],
+      [2.36, 1365536115],
+      [2.36, 1365536130],
+      [2.36, 1365536145],
+      [2.36, 1365536160],
+      [2.36, 1365536175],
+      [2.2853333333, 1365536190],
+      [2.2, 1365536205],
+      [2.2, 1365536220],
+      [2.2, 1365536235],
+      [2.2, 1365536250],
+      [2.2, 1365536265],
+      [2.3013333333, 1365536280],
+      [2.39, 1365536295],
+      [2.39, 1365536310],
+      [2.39, 1365536325],
+      [2.39, 1365536340],
+      [2.39, 1365536355],
+      [1.7606666667, 1365536370],
+      [1.21, 1365536385],
+      [1.21, 1365536400],
+      [1.21, 1365536415],
+      [1.21, 1365536430],
+      [1.21, 1365536445],
+      [0.93, 1365536460],
+      [0.51, 1365536475],
+      [0.51, 1365536490],
+      [0.51, 1365536505],
+      [0.51, 1365536520],
+      [0.51, 1365536535],
+      [0.494, 1365536550],
+      [0.45, 1365536565],
+      [0.45, 1365536580],
+      [0.45, 1365536595],
+      [0.794, 1365536610],
+      [1.74, 1365536625],
+      [1.74, 1365536640],
+      [1.74, 1365536655],
+      [1.74, 1365536670],
+      [1.5986666667, 1365536685],
+      [1.44, 1365536700],
+      [2.36, 1365536715],
+      [2.36, 1365536730],
+      [2.36, 1365536745],
+      [2.36, 1365536760],
+      [2.36, 1365536775],
+      [1.908, 1365536790],
+      [1.23, 1365536805],
+      [1.23, 1365536820],
+      [1.23, 1365536835],
+      [1.23, 1365536850],
+      [1.23, 1365536865],
+      [1.23, 1365536880],
+      [1.23, 1365536895],
+      [1.23, 1365536910],
+      [1.23, 1365536925],
+      [1.23, 1365536940],
+      [1.23, 1365536955],
+      [1.07, 1365536970],
+      [0.75, 1365536985],
+      [0.75, 1365537000],
+      [0.75, 1365537015],
+      [0.75, 1365537030],
+      [0.75, 1365537045],
+      [1.302, 1365537060],
+      [2.13, 1365537075],
+      [2.13, 1365537090],
+      [2.13, 1365537105],
+      [2.13, 1365537120],
+      [2.13, 1365537135],
+      [1.7, 1365537150],
+      [0.84, 1365537165],
+      [0.84, 1365537180],
+      [0.84, 1365537195],
+      [0.84, 1365537210],
+      [0.84, 1365537225],
+      [0.784, 1365537240],
+      [0.786, 1365537255],
+      [1.69, 1365537270],
+      [1.69, 1365537285],
+      [1.69, 1365537300],
+      [1.69, 1365537315],
+      [1.69, 1365537330],
+      [1.6533333333, 1365537345],
+      [1.14, 1365537360],
+      [1.14, 1365537375],
+      [1.14, 1365537390],
+      [1.14, 1365537405],
+      [1.14, 1365537420],
+      [1.1373333333, 1365537435],
+      [1.1, 1365537450],
+      [1.1, 1365537465],
+      [1.1, 1365537480],
+      [1.1, 1365537495],
+      [1.1, 1365537510],
+      [1.0726666667, 1365537525]
+    ]
+  },
+  {
+    "ds_name":"a1",
+    "cluster_name":"",
+    "graph_type":"line",
+    "host_name":"",
+    "metric_name":"Nodes",
+    "color":"#00FF00",
+    "datapoints":[
+      [1, 1365534060],
+      [1, 1365534075],
+      [1, 1365534090],
+      [1, 1365534105],
+      [1, 1365534120],
+      [1, 1365534135],
+      [1, 1365534150],
+      [1, 1365534165],
+      [1, 1365534180],
+      [1, 1365534195],
+      [1, 1365534210],
+      [1, 1365534225],
+      [1, 1365534240],
+      [1, 1365534255],
+      [1, 1365534270],
+      [1, 1365534285],
+      [1, 1365534300],
+      [1, 1365534315],
+      [1, 1365534330],
+      [1, 1365534345],
+      [1, 1365534360],
+      [1, 1365534375],
+      [1, 1365534390],
+      [1, 1365534405],
+      [1, 1365534420],
+      [1, 1365534435],
+      [1, 1365534450],
+      [1, 1365534465],
+      [1, 1365534480],
+      [1, 1365534495],
+      [1, 1365534510],
+      [1, 1365534525],
+      [1, 1365534540],
+      [1, 1365534555],
+      [1, 1365534570],
+      [1, 1365534585],
+      [1, 1365534600],
+      [1, 1365534615],
+      [1, 1365534630],
+      [1, 1365534645],
+      [1, 1365534660],
+      [1, 1365534675],
+      [1, 1365534690],
+      [1, 1365534705],
+      [1, 1365534720],
+      [1, 1365534735],
+      [1, 1365534750],
+      [1, 1365534765],
+      [1, 1365534780],
+      [1, 1365534795],
+      [1, 1365534810],
+      [1, 1365534825],
+      [1, 1365534840],
+      [1, 1365534855],
+      [1, 1365534870],
+      [1, 1365534885],
+      [1, 1365534900],
+      [1, 1365534915],
+      [1, 1365534930],
+      [1, 1365534945],
+      [1, 1365534960],
+      [1, 1365534975],
+      [1, 1365534990],
+      [1, 1365535005],
+      [1, 1365535020],
+      [1, 1365535035],
+      [1, 1365535050],
+      [1, 1365535065],
+      [1, 1365535080],
+      [1, 1365535095],
+      [1, 1365535110],
+      [1, 1365535125],
+      [1, 1365535140],
+      [1, 1365535155],
+      [1, 1365535170],
+      [1, 1365535185],
+      [1, 1365535200],
+      [1, 1365535215],
+      [1, 1365535230],
+      [1, 1365535245],
+      [1, 1365535260],
+      [1, 1365535275],
+      [1, 1365535290],
+      [1, 1365535305],
+      [1, 1365535320],
+      [1, 1365535335],
+      [1, 1365535350],
+      [1, 1365535365],
+      [1, 1365535380],
+      [1, 1365535395],
+      [1, 1365535410],
+      [1, 1365535425],
+      [1, 1365535440],
+      [1, 1365535455],
+      [1, 1365535470],
+      [1, 1365535485],
+      [1, 1365535500],
+      [1, 1365535515],
+      [1, 1365535530],
+      [1, 1365535545],
+      [1, 1365535560],
+      [1, 1365535575],
+      [1, 1365535590],
+      [1, 1365535605],
+      [1, 1365535620],
+      [1, 1365535635],
+      [1, 1365535650],
+      [1, 1365535665],
+      [1, 1365535680],
+      [1, 1365535695],
+      [1, 1365535710],
+      [1, 1365535725],
+      [1, 1365535740],
+      [1, 1365535755],
+      [1, 1365535770],
+      [1, 1365535785],
+      [1, 1365535800],
+      [1, 1365535815],
+      [1, 1365535830],
+      [1, 1365535845],
+      [1, 1365535860],
+      [1, 1365535875],
+      [1, 1365535890],
+      [1, 1365535905],
+      [1, 1365535920],
+      [1, 1365535935],
+      [1, 1365535950],
+      [1, 1365535965],
+      [1, 1365535980],
+      [1, 1365535995],
+      [1, 1365536010],
+      [1, 1365536025],
+      [1, 1365536040],
+      [1, 1365536055],
+      [1, 1365536070],
+      [1, 1365536085],
+      [1, 1365536100],
+      [1, 1365536115],
+      [1, 1365536130],
+      [1, 1365536145],
+      [1, 1365536160],
+      [1, 1365536175],
+      [1, 1365536190],
+      [1, 1365536205],
+      [1, 1365536220],
+      [1, 1365536235],
+      [1, 1365536250],
+      [1, 1365536265],
+      [1, 1365536280],
+      [1, 1365536295],
+      [1, 1365536310],
+      [1, 1365536325],
+      [1, 1365536340],
+      [1, 1365536355],
+      [1, 1365536370],
+      [1, 1365536385],
+      [1, 1365536400],
+      [1, 1365536415],
+      [1, 1365536430],
+      [1, 1365536445],
+      [1, 1365536460],
+      [1, 1365536475],
+      [1, 1365536490],
+      [1, 1365536505],
+      [1, 1365536520],
+      [1, 1365536535],
+      [1, 1365536550],
+      [1, 1365536565],
+      [1, 1365536580],
+      [1, 1365536595],
+      [1, 1365536610],
+      [1, 1365536625],
+      [1, 1365536640],
+      [1, 1365536655],
+      [1, 1365536670],
+      [1, 1365536685],
+      [1, 1365536700],
+      [1, 1365536715],
+      [1, 1365536730],
+      [1, 1365536745],
+      [1, 1365536760],
+      [1, 1365536775],
+      [1, 1365536790],
+      [1, 1365536805],
+      [1, 1365536820],
+      [1, 1365536835],
+      [1, 1365536850],
+      [1, 1365536865],
+      [1, 1365536880],
+      [1, 1365536895],
+      [1, 1365536910],
+      [1, 1365536925],
+      [1, 1365536940],
+      [1, 1365536955],
+      [1, 1365536970],
+      [1, 1365536985],
+      [1, 1365537000],
+      [1, 1365537015],
+      [1, 1365537030],
+      [1, 1365537045],
+      [1, 1365537060],
+      [1, 1365537075],
+      [1, 1365537090],
+      [1, 1365537105],
+      [1, 1365537120],
+      [1, 1365537135],
+      [1, 1365537150],
+      [1, 1365537165],
+      [1, 1365537180],
+      [1, 1365537195],
+      [1, 1365537210],
+      [1, 1365537225],
+      [1, 1365537240],
+      [1, 1365537255],
+      [1, 1365537270],
+      [1, 1365537285],
+      [1, 1365537300],
+      [1, 1365537315],
+      [1, 1365537330],
+      [1, 1365537345],
+      [1, 1365537360],
+      [1, 1365537375],
+      [1, 1365537390],
+      [1, 1365537405],
+      [1, 1365537420],
+      [1, 1365537435],
+      [1, 1365537450],
+      [1, 1365537465],
+      [1, 1365537480],
+      [1, 1365537495],
+      [1, 1365537510],
+      [1, 1365537525]
+    ]
+  },
+  {
+    "ds_name":"a2",
+    "cluster_name":"",
+    "graph_type":"line",
+    "host_name":"",
+    "metric_name":"CPUs ",
+    "color":"#FF0000",
+    "datapoints":[
+      [2, 1365534060],
+      [2, 1365534075],
+      [2, 1365534090],
+      [2, 1365534105],
+      [2, 1365534120],
+      [2, 1365534135],
+      [2, 1365534150],
+      [2, 1365534165],
+      [2, 1365534180],
+      [2, 1365534195],
+      [2, 1365534210],
+      [2, 1365534225],
+      [2, 1365534240],
+      [2, 1365534255],
+      [2, 1365534270],
+      [2, 1365534285],
+      [2, 1365534300],
+      [2, 1365534315],
+      [2, 1365534330],
+      [2, 1365534345],
+      [2, 1365534360],
+      [2, 1365534375],
+      [2, 1365534390],
+      [2, 1365534405],
+      [2, 1365534420],
+      [2, 1365534435],
+      [2, 1365534450],
+      [2, 1365534465],
+      [2, 1365534480],
+      [2, 1365534495],
+      [2, 1365534510],
+      [2, 1365534525],
+      [2, 1365534540],
+      [2, 1365534555],
+      [2, 1365534570],
+      [2, 1365534585],
+      [2, 1365534600],
+      [2, 1365534615],
+      [2, 1365534630],
+      [2, 1365534645],
+      [2, 1365534660],
+      [2, 1365534675],
+      [2, 1365534690],
+      [2, 1365534705],
+      [2, 1365534720],
+      [2, 1365534735],
+      [2, 1365534750],
+      [2, 1365534765],
+      [2, 1365534780],
+      [2, 1365534795],
+      [2, 1365534810],
+      [2, 1365534825],
+      [2, 1365534840],
+      [2, 1365534855],
+      [2, 1365534870],
+      [2, 1365534885],
+      [2, 1365534900],
+      [2, 1365534915],
+      [2, 1365534930],
+      [2, 1365534945],
+      [2, 1365534960],
+      [2, 1365534975],
+      [2, 1365534990],
+      [2, 1365535005],
+      [2, 1365535020],
+      [2, 1365535035],
+      [2, 1365535050],
+      [2, 1365535065],
+      [2, 1365535080],
+      [2, 1365535095],
+      [2, 1365535110],
+      [2, 1365535125],
+      [2, 1365535140],
+      [2, 1365535155],
+      [2, 1365535170],
+      [2, 1365535185],
+      [2, 1365535200],
+      [2, 1365535215],
+      [2, 1365535230],
+      [2, 1365535245],
+      [2, 1365535260],
+      [2, 1365535275],
+      [2, 1365535290],
+      [2, 1365535305],
+      [2, 1365535320],
+      [2, 1365535335],
+      [2, 1365535350],
+      [2, 1365535365],
+      [2, 1365535380],
+      [2, 1365535395],
+      [2, 1365535410],
+      [2, 1365535425],
+      [2, 1365535440],
+      [2, 1365535455],
+      [2, 1365535470],
+      [2, 1365535485],
+      [2, 1365535500],
+      [2, 1365535515],
+      [2, 1365535530],
+      [2, 1365535545],
+      [2, 1365535560],
+      [2, 1365535575],
+      [2, 1365535590],
+      [2, 1365535605],
+      [2, 1365535620],
+      [2, 1365535635],
+      [2, 1365535650],
+      [2, 1365535665],
+      [2, 1365535680],
+      [2, 1365535695],
+      [2, 1365535710],
+      [2, 1365535725],
+      [2, 1365535740],
+      [2, 1365535755],
+      [2, 1365535770],
+      [2, 1365535785],
+      [2, 1365535800],
+      [2, 1365535815],
+      [2, 1365535830],
+      [2, 1365535845],
+      [2, 1365535860],
+      [2, 1365535875],
+      [2, 1365535890],
+      [2, 1365535905],
+      [2, 1365535920],
+      [2, 1365535935],
+      [2, 1365535950],
+      [2, 1365535965],
+      [2, 1365535980],
+      [2, 1365535995],
+      [2, 1365536010],
+      [2, 1365536025],
+      [2, 1365536040],
+      [2, 1365536055],
+      [2, 1365536070],
+      [2, 1365536085],
+      [2, 1365536100],
+      [2, 1365536115],
+      [2, 1365536130],
+      [2, 1365536145],
+      [2, 1365536160],
+      [2, 1365536175],
+      [2, 1365536190],
+      [2, 1365536205],
+      [2, 1365536220],
+      [2, 1365536235],
+      [2, 1365536250],
+      [2, 1365536265],
+      [2, 1365536280],
+      [2, 1365536295],
+      [2, 1365536310],
+      [2, 1365536325],
+      [2, 1365536340],
+      [2, 1365536355],
+      [2, 1365536370],
+      [2, 1365536385],
+      [2, 1365536400],
+      [2, 1365536415],
+      [2, 1365536430],
+      [2, 1365536445],
+      [2, 1365536460],
+      [2, 1365536475],
+      [2, 1365536490],
+      [2, 1365536505],
+      [2, 1365536520],
+      [2, 1365536535],
+      [2, 1365536550],
+      [2, 1365536565],
+      [2, 1365536580],
+      [2, 1365536595],
+      [2, 1365536610],
+      [2, 1365536625],
+      [2, 1365536640],
+      [2, 1365536655],
+      [2, 1365536670],
+      [2, 1365536685],
+      [2, 1365536700],
+      [2, 1365536715],
+      [2, 1365536730],
+      [2, 1365536745],
+      [2, 1365536760],
+      [2, 1365536775],
+      [2, 1365536790],
+      [2, 1365536805],
+      [2, 1365536820],
+      [2, 1365536835],
+      [2, 1365536850],
+      [2, 1365536865],
+      [2, 1365536880],
+      [2, 1365536895],
+      [2, 1365536910],
+      [2, 1365536925],
+      [2, 1365536940],
+      [2, 1365536955],
+      [2, 1365536970],
+      [2, 1365536985],
+      [2, 1365537000],
+      [2, 1365537015],
+      [2, 1365537030],
+      [2, 1365537045],
+      [2, 1365537060],
+      [2, 1365537075],
+      [2, 1365537090],
+      [2, 1365537105],
+      [2, 1365537120],
+      [2, 1365537135],
+      [2, 1365537150],
+      [2, 1365537165],
+      [2, 1365537180],
+      [2, 1365537195],
+      [2, 1365537210],
+      [2, 1365537225],
+      [2, 1365537240],
+      [2, 1365537255],
+      [2, 1365537270],
+      [2, 1365537285],
+      [2, 1365537300],
+      [2, 1365537315],
+      [2, 1365537330],
+      [2, 1365537345],
+      [2, 1365537360],
+      [2, 1365537375],
+      [2, 1365537390],
+      [2, 1365537405],
+      [2, 1365537420],
+      [2, 1365537435],
+      [2, 1365537450],
+      [2, 1365537465],
+      [2, 1365537480],
+      [2, 1365537495],
+      [2, 1365537510],
+      [2, 1365537525]
+    ]
+  },
+  {
+    "ds_name":"a3",
+    "cluster_name":"",
+    "graph_type":"line",
+    "host_name":"",
+    "metric_name":"Procs",
+    "color":"#2030F4",
+    "datapoints":[
+      [4, 1365534060],
+      [4, 1365534075],
+      [4, 1365534090],
+      [4, 1365534105],
+      [4, 1365534120],
+      [4, 1365534135],
+      [4, 1365534150],
+      [4, 1365534165],
+      [4, 1365534180],
+      [4, 1365534195],
+      [0, 1365534210],
+      [0, 1365534225],
+      [0, 1365534240],
+      [0, 1365534255],
+      [0, 1365534270],
+      [0.93333333333, 1365534285],
+      [1, 1365534300],
+      [1, 1365534315],
+      [1, 1365534330],
+      [1, 1365534345],
+      [0.93333333333, 1365534360],
+      [0, 1365534375],
+      [0, 1365534390],
+      [0, 1365534405],
+      [0, 1365534420],
+      [0.066666666667, 1365534435],
+      [1, 1365534450],
+      [1, 1365534465],
+      [1, 1365534480],
+      [1, 1365534495],
+      [1, 1365534510],
+      [1.2, 1365534525],
+      [4, 1365534540],
+      [4, 1365534555],
+      [4, 1365534570],
+      [4, 1365534585],
+      [3.8, 1365534600],
+      [1, 1365534615],
+      [1, 1365534630],
+      [1, 1365534645],
+      [1, 1365534660],
+      [1, 1365534675],
+      [1, 1365534690],
+      [1, 1365534705],
+      [1, 1365534720],
+      [1, 1365534735],
+      [1, 1365534750],
+      [1, 1365534765],
+      [5, 1365534780],
+      [5, 1365534795],
+      [5, 1365534810],
+      [5, 1365534825],
+      [5, 1365534840],
+      [5, 1365534855],
+      [5, 1365534870],
+      [5, 1365534885],
+      [5, 1365534900],
+      [5, 1365534915],
+      [0.66666666667, 1365534930],
+      [0, 1365534945],
+      [0, 1365534960],
+      [0, 1365534975],
+      [0, 1365534990],
+      [3.4666666667, 1365535005],
+      [4, 1365535020],
+      [4, 1365535035],
+      [4, 1365535050],
+      [4, 1365535065],
+      [4, 1365535080],
+      [0.8, 1365535095],
+      [0, 1365535110],
+      [0, 1365535125],
+      [0, 1365535140],
+      [0, 1365535155],
+      [2.9333333333, 1365535170],
+      [4, 1365535185],
+      [4, 1365535200],
+      [4, 1365535215],
+      [4, 1365535230],
+      [1.6, 1365535245],
+      [0, 1365535260],
+      [0, 1365535275],
+      [0, 1365535290],
+      [0, 1365535305],
+      [3, 1365535320],
+      [5, 1365535335],
+      [5, 1365535350],
+      [5, 1365535365],
+      [5, 1365535380],
+      [5, 1365535395],
+      [14, 1365535410],
+      [20, 1365535425],
+      [20, 1365535440],
+      [20, 1365535455],
+      [20, 1365535470],
+      [13.466666667, 1365535485],
+      [6, 1365535500],
+      [6, 1365535515],
+      [6, 1365535530],
+      [6, 1365535545],
+      [8.1333333333, 1365535560],
+      [10, 1365535575],
+      [10, 1365535590],
+      [10, 1365535605],
+      [10, 1365535620],
+      [10, 1365535635],
+      [5.8, 1365535650],
+      [1, 1365535665],
+      [1, 1365535680],
+      [1, 1365535695],
+      [1, 1365535710],
+      [1, 1365535725],
+      [1, 1365535740],
+      [1, 1365535755],
+      [1, 1365535770],
+      [1, 1365535785],
+      [0.53333333333, 1365535800],
+      [0, 1365535815],
+      [0, 1365535830],
+      [0, 1365535845],
+      [0, 1365535860],
+      [0, 1365535875],
+      [0.93333333333, 1365535890],
+      [2, 1365535905],
+      [2, 1365535920],
+      [2, 1365535935],
+      [2, 1365535950],
+      [3.6, 1365535965],
+      [5, 1365535980],
+      [5, 1365535995],
+      [5, 1365536010],
+      [5, 1365536025],
+      [4.4666666667, 1365536040],
+      [4, 1365536055],
+      [4, 1365536070],
+      [4, 1365536085],
+      [4, 1365536100],
+      [4, 1365536115],
+      [2.9333333333, 1365536130],
+      [2, 1365536145],
+      [2, 1365536160],
+      [2, 1365536175],
+      [2, 1365536190],
+      [2.9333333333, 1365536205],
+      [4, 1365536220],
+      [4, 1365536235],
+      [4, 1365536250],
+      [4, 1365536265],
+      [1.8666666667, 1365536280],
+      [0, 1365536295],
+      [0, 1365536310],
+      [0, 1365536325],
+      [0, 1365536340],
+      [0, 1365536355],
+      [0.53333333333, 1365536370],
+      [1, 1365536385],
+      [1, 1365536400],
+      [1, 1365536415],
+      [1, 1365536430],
+      [2.8666666667, 1365536445],
+      [5, 1365536460],
+      [5, 1365536475],
+      [5, 1365536490],
+      [5, 1365536505],
+      [4.6666666667, 1365536520],
+      [4, 1365536535],
+      [4, 1365536550],
+      [4, 1365536565],
+      [4, 1365536580],
+      [4, 1365536595],
+      [4, 1365536610],
+      [4, 1365536625],
+      [4, 1365536640],
+      [4, 1365536655],
+      [4, 1365536670],
+      [3.7333333333, 1365536685],
+      [3, 1365536700],
+      [3, 1365536715],
+      [3, 1365536730],
+      [3, 1365536745],
+      [3.6666666667, 1365536760],
+      [5, 1365536775],
+      [5, 1365536790],
+      [5, 1365536805],
+      [5, 1365536820],
+      [5, 1365536835],
+      [5.4, 1365536850],
+      [6, 1365536865],
+      [6, 1365536880],
+      [6, 1365536895],
+      [6, 1365536910],
+      [5.6, 1365536925],
+      [5, 1365536940],
+      [5, 1365536955],
+      [5, 1365536970],
+      [5, 1365536985],
+      [3.8, 1365537000],
+      [2, 1365537015],
+      [2, 1365537030],
+      [2, 1365537045],
+      [2, 1365537060],
+      [2, 1365537075],
+      [3.6, 1365537090],
+      [6, 1365537105],
+      [6, 1365537120],
+      [6, 1365537135],
+      [6, 1365537150],
+      [5.6666666667, 1365537165],
+      [5, 1365537180],
+      [5, 1365537195],
+      [5, 1365537210],
+      [5, 1365537225],
+      [5, 1365537240],
+      [5, 1365537255],
+      [5, 1365537270],
+      [5, 1365537285],
+      [5, 1365537300],
+      [5.2666666667, 1365537315],
+      [7, 1365537330],
+      [7, 1365537345],
+      [7, 1365537360],
+      [7, 1365537375],
+      [7, 1365537390],
+      [6.6, 1365537405],
+      [1, 1365537420],
+      [1, 1365537435],
+      [1, 1365537450],
+      [1, 1365537465],
+      [1.2666666667, 1365537480],
+      [5, 1365537495],
+      [5, 1365537510],
+      [5, 1365537525]
+    ]
+  }
+]