Homeโ€บ๐Ÿ“Š Dashboards & Notebooksโ€บModule 91 min read ยท 10/21

Classic โ†’ Gen3 Dashboards

Hands-on3 exercises

Classic โ†’ Gen3 Dashboards

Gen2 dashboards used pre-built tiles (host health, service flow, problems). Gen3 dashboards are entirely DQL-powered โ€” every tile runs a query. More flexible, but you need to write DQL.

Key Differences

GEN2 Dashboard                          GEN3 Dashboard
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Pre-built tile types                    DQL query + visualization type
Metric selector in tile config          DQL timeseries/fetch in query field
Management zone filter                  Segment filter or DQL variable
Tile-based layout (pixel positions)     Grid layout (20-unit width)
Dashboard JSON v13                      Dashboard JSON v21
Shared via management zone              Shared via document permissions
Data Explorer for ad-hoc                Notebooks for ad-hoc

Dashboard JSON Structure (v21)

{
  "name": "My Dashboard",
  "type": "dashboard",
  "content": {
    "version": 21,
    "variables": [],
    "tiles": {
      "1": {
        "type": "markdown",
        "content": "# Dashboard Title"
      },
      "2": {
        "type": "data",
        "title": "CPU Usage",
        "query": "timeseries avg(dt.host.cpu.usage), by:{dt.entity.host}",
        "visualization": "lineChart"
      }
    },
    "layouts": {
      "1": {"x": 0, "y": 0, "w": 20, "h": 2},
      "2": {"x": 0, "y": 2, "w": 10, "h": 8}
    }
  }
}

Grid System

Gen3 uses a 20-unit wide grid:

Full width:    w: 20
Half:          w: 10
Third:         w: 7 (or 6)
Quarter:       w: 5

Visualization Types

Time-series (needs timeseries/makeTimeseries):
  lineChart, areaChart, barChart, bandChart

Categorical (summarize by:{field}):
  categoricalBarChart, pieChart, donutChart

Single value:
  singleValue, meterBar, gauge

Tabular:
  table, recordList

Other:
  histogram, honeycomb, heatmap, scatterplot
  choroplethMap, dotMap, connectionMap, bubbleMap

Migration Strategy

  1. Export your Gen2 dashboard (JSON)
  2. For each tile, identify the metric or data source
  3. Write the equivalent DQL query
  4. Build the Gen3 dashboard with DQL tiles
  5. Deploy via Document API or import in UI