Chukwa HICC provides REST interfaces for dashboard rendering. The primary resources are:
The resources and the entities that are passed to them are defined using JAXB and are represented in either XML or JSON formats depending on the ContentType and Accept HTTP headers. The definition of the types is given in the JavaDoc.
The typical usage are:
| PUT | preview() |
Preview a banner tile
| Content-Type: application/json | |
| Status: 200 | Content-Type: text/html |
Preview a bannerExample | |
| PUT | previewSeries() |
Preview a series JSON for banner tile
| Content-Type: */* | |
| Example for */* is available in REST API. |
| Status: 200 | Content-Type: application/json |
Preview a banner seriesExample | |
| POST | create() |
| Content-Type: application/json | |
| Content-Type: */* | |
| Example for */* is available in REST API. |
| GET | load() |
Load a dashboard view
| id | string | is dashboard unique identifier |
| Status: 200 | Content-Type: application/json |
Display dashboard JSON structureExample | |
| PUT | save() |
Save a dashboard view
| id | string | is dashboard unique identifier |
| Content-Type: application/json | |
Example |
| Status: 200 | Content-Type: text/plain |
| Display save status code | |
| GET | whoami() |
Return HTTP request connection user name
| Status: 200 | Content-Type: text/plain |
UsernameExample | |
| GET | quicklinks() |
Render Quick links to various services web portals
| Status: 200 | Content-Type: text/html |
Display quick link widgetExample | |
| GET | getHeatmap() |
Render a heatmap
| metricGroup | string | is metric group name |
| metric | string | is metric name |
| start | string | is start time in yyyyMMddHHmmss format |
| end | string | is end time in yyyyMMddHHmmss format |
| max | double default: 1.0 | is maximum possible value of the heatmap |
| scale | double default: 100 | is the range of possible values |
| width | int default: 700 | is width of the image |
| height | int default: 400 | is height of the image |
| Status: 200 | Content-Type: text/html |
Login screenExample | |
| GET | heatmapTemplate() |
Render a heatmap from HBase series
| metricGroup | string default: SystemMetrics | is metric group name |
| metric | string default: cpu.combined. | is metric name |
| width | string default: 700px | is width of the image |
| height | string default: 400px | is height of the image |
| title | string default: CPU | is title of the heatmap |
| yLabel | string default: device | is y axis label for the heatmap |
| Content-Type: text/html | |
| PUT | preview() |
Preview a pie chart
| Content-Type: application/json | |
| Status: 200 | Content-Type: text/html |
Preview a pie chartExample | |
| PUT | previewSeries() |
Preview a series JSON for pie chart
| Content-Type: application/json | |
Example |
| Status: 200 | Content-Type: application/json |
Preview a pie chart seriesExample | |
| POST | create() |
| Content-Type: application/json | |
| Content-Type: */* | |
| Example for */* is available in REST API. |
| PUT | save() |
Store session attributes
| Content-Type: application/json | |
| Content-Type: */* | |
| Example for */* is available in REST API. |
| POST | check() |
Password verification REST API
| Status: 200 | Content-Type: text/plain |
User login successfulExample | |
| Status: 403 | Content-Type: text/plain |
Login deniedExample | |
| GET | login() |
Password verification login screen
| Content-Type: */* | |
| Example for */* is available in REST API. |
| Status: 200 | Content-Type: text/html |
Login screenExample | |
| GET | getSeriesBySessionAttribute() |
Query metric series by session key, this is useful to query same metric from multiple data sources, such as multiple hosts
| metricGroup | string | is metric group name |
| sessionKey | string | is session key which maps to multiple data sources |
| metric | string | is metric name |
| start | string | is start time |
| end | string | is end time |
| Content-Type: application/json | |
| GET | getTables() |
Query all metric group names in HBase
| Content-Type: application/json | |
| POST | create() |
Create a new chart meta data
| Content-Type: application/json | |
Example |
| Content-Type: */* | |
| Example for */* is available in REST API. |
| PUT | save() |
Save chart meta data
| id | string | is unique identifier of Chart object |
| Content-Type: application/json | |
Example |
| Content-Type: */* | |
| Example for */* is available in REST API. |
| PUT | preview() |
Display a chart base on chart configuration from REST API input
| Content-Type: application/json | |
Example |
| Content-Type: text/html | |
| PUT | previewSeries() |
Display metrics series in JSON
| Content-Type: application/json | |
Example |
| Status: 200 | Content-Type: application/json |
| Display series data in JSON | |
| GET | describe() |
Describe chart meta data
| id | string | Chart ID |
| Status: 200 | Content-Type: application/json |
Display chart configuration optionsExample | |
| GET | viewWidget() |
View widget details
| title | string | is title of the widget |
| Status: 200 | Content-Type: application/json |
View widget detailsExample | |
| POST | createWidget() |
Create a widget
| Content-Type: application/json | |
Example |
| Status: 200 | Content-Type: text/plain |
Widget creation successfulExample | |
| Status: 400 | Content-Type: text/plain |
Widget creation unsuccessfulExample | |
| PUT | updateWidget() |
Update a widget
| title | string | is widget title |
| Content-Type: application/json | |
Example |
| Status: 200 | Content-Type: text/plain |
Widget update is successfulExample | |
| Status: 400 | Content-Type: text/plain |
Widget update unsuccessfulExample | |
| GET | searchWidget() |
Search for widget base on widget title
| query | string | is search critieria |
| Status: 200 | Content-Type: application/json |
Display list of HICC widget that matches queryExample | |
| GET | listWidget() |
List widgets
| limit | int default: 1000 | is number of widgets to return |
| offset | int default: 0 | is position in the widget list |
| Status: 200 | Content-Type: application/json |
Display list of HICC supported widgetsExample | |
| PUT | preview() |
Preview circle graph with a set of chart configuration
| Content-Type: application/json | |
Example |
| Content-Type: text/html | |
| PUT | previewSeries() |
Circle graph data can be calculated based on either a ratio of two metrics or the selected metric is a percentage metric for rendering circle graph.
| Content-Type: application/json | |
Example |
| Status: 200 | Content-Type: application/json |
| Display series data in JSON | |
| GET | draw() |
Render circle using jquery circliful.js
| id | string | Title of the tile. |
| invert | boolean default: false | Toggle to display warning, error color by upper bound or lower bound. |
| Status: 200 | Content-Type: text/html |
Render circleful chartExample | |