Uploaded image for project: 'Chukwa'
  1. Chukwa
  2. CHUKWA-697

Create a generalized REST API and widget for creating heat map for time series metrics

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.5.0
    • Fix Version/s: 0.6.0
    • Component/s: User Interface
    • Labels:
      None
    • Environment:

      MacOSX 10.8, Java 6

      Description

      It would be nice to monitor some of the metrics as heatmap for visualize resource utilization distribution. For example, cpu usage over time can be visualized with cpu listed in y axis, and time in x axis. This provides the ability to identify the work distribution on the cluster over time.

      The rest api for query HBase data can be summarized to:

      Request:

      GET /hicc/v1/heatmap/{table}/{family}/{columnPrefix}
      

      Query parameters:
      start = start time
      end = end time
      max = maximum possible value for a metric
      scale = scale the metric to a number than original, such as scaling 0 to 1 to 0% to 100%
      height = height of the canvas to calculate y axis scaling of metric series

      Response in JSON:

      {
        data: [
          { x: 0, y: 0, count: 70 },
          { x: 0, y: 1, count: 90 },
          ..
        ],
        max: 100,
        radius: 10,
        series: 10
      }
      

      Where max is the max possible value. Radius is to scale how big the data point should be. Series is to calculate how many actual series is queried from HBase.

      For visualization widget, create a JSP that can draw heatmap on canvas.

      /hicc/jsp/heatmap.jsp
      

      Query Parameters:
      title = Title of the legend
      url = REST API to fetch data
      width = Width of the visualization
      height = Height of the visualization
      yLabel = Label of Y Axis

      1. CHUKWA-697.patch
        43 kB
        Eric Yang
      2. Screen Shot 2013-09-01 at 4.35.32 PM.png
        1.04 MB
        Eric Yang

        Activity

        Hide
        eyang Eric Yang added a comment -

        Screenshot of the visualization.

        Show
        eyang Eric Yang added a comment - Screenshot of the visualization.
        Hide
        eyang Eric Yang added a comment -

        I just committed this.

        Show
        eyang Eric Yang added a comment - I just committed this.
        Hide
        hudson Hudson added a comment -

        FAILURE: Integrated in Chukwa-trunk #476 (See https://builds.apache.org/job/Chukwa-trunk/476/)
        CHUKWA-697. Added generic heatmap REST API and visualization. (Eric Yang) (eyang: http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1520826)

        • /incubator/chukwa/trunk/CHANGES.txt
        • /incubator/chukwa/trunk/NOTICE.txt
        • /incubator/chukwa/trunk/pom.xml
        • /incubator/chukwa/trunk/src/main/java/org/apache/hadoop/chukwa/datastore/ChukwaHBaseStore.java
        • /incubator/chukwa/trunk/src/main/java/org/apache/hadoop/chukwa/hicc/bean/HeatMapPoint.java
        • /incubator/chukwa/trunk/src/main/java/org/apache/hadoop/chukwa/hicc/bean/Heatmap.java
        • /incubator/chukwa/trunk/src/main/java/org/apache/hadoop/chukwa/hicc/rest/HeatmapController.java
        • /incubator/chukwa/trunk/src/main/web/hicc/descriptors/system_heatmap.descriptor
        • /incubator/chukwa/trunk/src/main/web/hicc/js/heatmap.js
        • /incubator/chukwa/trunk/src/main/web/hicc/jsp/heatmap.jsp
        Show
        hudson Hudson added a comment - FAILURE: Integrated in Chukwa-trunk #476 (See https://builds.apache.org/job/Chukwa-trunk/476/ ) CHUKWA-697 . Added generic heatmap REST API and visualization. (Eric Yang) (eyang: http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1520826 ) /incubator/chukwa/trunk/CHANGES.txt /incubator/chukwa/trunk/NOTICE.txt /incubator/chukwa/trunk/pom.xml /incubator/chukwa/trunk/src/main/java/org/apache/hadoop/chukwa/datastore/ChukwaHBaseStore.java /incubator/chukwa/trunk/src/main/java/org/apache/hadoop/chukwa/hicc/bean/HeatMapPoint.java /incubator/chukwa/trunk/src/main/java/org/apache/hadoop/chukwa/hicc/bean/Heatmap.java /incubator/chukwa/trunk/src/main/java/org/apache/hadoop/chukwa/hicc/rest/HeatmapController.java /incubator/chukwa/trunk/src/main/web/hicc/descriptors/system_heatmap.descriptor /incubator/chukwa/trunk/src/main/web/hicc/js/heatmap.js /incubator/chukwa/trunk/src/main/web/hicc/jsp/heatmap.jsp

          People

          • Assignee:
            eyang Eric Yang
            Reporter:
            eyang Eric Yang
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development