REST Resource: projects.dashboards

Resource: Dashboard

A Google Stackdriver dashboard. Dashboards define the content and layout of pages in the Stackdriver web application.

JSON representation
{"name":string,"displayName":string,"etag":string,"dashboardFilters":[{object (DashboardFilter)}],"labels":{string:string,...},"annotations":{object (DashboardAnnotations)},// Union fieldlayout can be only one of the following:"gridLayout":{object (GridLayout)},"mosaicLayout":{object (MosaicLayout)},"rowLayout":{object (RowLayout)},"columnLayout":{object (ColumnLayout)}// End of list of possible types for union fieldlayout.}
Fields
name

string

Identifier. The resource name of the dashboard.

displayName

string

Required. The mutable, human-readable name.

etag

string

etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. Anetag is returned in the response todashboards.get, and users are expected to put that etag in the request todashboards.patch to ensure that their change will be applied to the same version of the Dashboard configuration. The field should not be passed during dashboard creation.

dashboardFilters[]

object (DashboardFilter)

Filters to reduce the amount of data charted based on the filter criteria.

labels

map (key: string, value: string)

Labels applied to the dashboard

annotations

object (DashboardAnnotations)

Configuration for event annotations to display on this dashboard.

Union fieldlayout. A dashboard's root container element that defines the layout style.layout can be only one of the following:
gridLayout

object (GridLayout)

Content is arranged with a basic layout that re-flows a simple list of informational elements like widgets or tiles.

mosaicLayout

object (MosaicLayout)

The content is arranged as a grid of tiles, with each content widget occupying one or more grid blocks.

rowLayout

object (RowLayout)

The content is divided into equally spaced rows and the widgets are arranged horizontally.

columnLayout

object (ColumnLayout)

The content is divided into equally spaced columns and the widgets are arranged vertically.

GridLayout

A basic layout divides the available space into vertical columns of equal width and arranges a list of widgets using a row-first strategy.

JSON representation
{"columns":string,"widgets":[{object (Widget)}]}
Fields
columns

string (int64 format)

The number of columns into which the view's width is divided. If omitted or set to zero, a system default will be used while rendering.

widgets[]

object (Widget)

The informational elements that are arranged into the columns row-first.

Widget

Widget contains a single dashboard component and configuration of how to present the component in the dashboard.

JSON representation
{"title":string,"id":string,"visibilityCondition":{object (VisibilityCondition)},// Union fieldcontent can be only one of the following:"xyChart":{object (XyChart)},"scorecard":{object (Scorecard)},"text":{object (Text)},"blank":{object},"alertChart":{object (AlertChart)},"timeSeriesTable":{object (TimeSeriesTable)},"collapsibleGroup":{object (CollapsibleGroup)},"logsPanel":{object (LogsPanel)},"incidentList":{object (IncidentList)},"pieChart":{object (PieChart)},"treemap":{object (Treemap)},"errorReportingPanel":{object (ErrorReportingPanel)},"sectionHeader":{object (SectionHeader)},"singleViewGroup":{object (SingleViewGroup)},"filterControl":{object (FilterControl)}// End of list of possible types for union fieldcontent.}
Fields
title

string

Optional. The title of the widget.

id

string

Optional. The widget id. Ids may be made up of alphanumerics, dashes and underscores. Widget ids are optional.

visibilityCondition

object (VisibilityCondition)

Optional. If set, this widget is rendered only when the condition is evaluated to true.

Union fieldcontent. Content defines the component used to populate the widget.content can be only one of the following:
xyChart

object (XyChart)

A chart of time series data.

scorecard

object (Scorecard)

A scorecard summarizing time series data.

text

object (Text)

A raw string or markdown displaying textual content.

blank

object

A blank space.

alertChart

object (AlertChart)

A chart of alert policy data.

timeSeriesTable

object (TimeSeriesTable)

A widget that displays time series data in a tabular format.

collapsibleGroup

object (CollapsibleGroup)

A widget that groups the other widgets. All widgets that are within the area spanned by the grouping widget are considered member widgets.

logsPanel

object (LogsPanel)

A widget that shows a stream of logs.

incidentList

object (IncidentList)

A widget that shows list of incidents.

pieChart

object (PieChart)

A widget that displays timeseries data as a pie chart.

treemap

object (Treemap)

A widget that displays data as a treemap.

errorReportingPanel

object (ErrorReportingPanel)

A widget that displays a list of error groups.

sectionHeader

object (SectionHeader)

A widget that defines a section header for easier navigation of the dashboard.

singleViewGroup

object (SingleViewGroup)

A widget that groups the other widgets by using a dropdown menu.

filterControl

object (FilterControl)

A widget that displays an input field to change the value of a template variable.

XyChart

A chart that displays data on a 2D (X and Y axes) plane.

JSON representation
{"dataSets":[{object (DataSet)}],"timeshiftDuration":string,"thresholds":[{object (Threshold)}],"xAxis":{object (Axis)},"yAxis":{object (Axis)},"y2Axis":{object (Axis)},"chartOptions":{object (ChartOptions)}}
Fields
dataSets[]

object (DataSet)

Required. The data displayed in this chart.

timeshiftDuration

string (Duration format)

The duration used to display a comparison chart. A comparison chart simultaneously shows values from two similar-length time periods (e.g., week-over-week metrics). The duration must be positive, and it can only be applied to charts with data sets of LINE plot type.

thresholds[]

object (Threshold)

Threshold lines drawn horizontally across the chart.

xAxis

object (Axis)

The properties applied to the x-axis.

yAxis

object (Axis)

The properties applied to the y-axis.

y2Axis

object (Axis)

The properties applied to the y2-axis.

chartOptions

object (ChartOptions)

Display options for the chart.

DataSet

Groups a time series query definition with charting options.

JSON representation
{"timeSeriesQuery":{object (TimeSeriesQuery)},"plotType":enum (PlotType),"legendTemplate":string,"minAlignmentPeriod":string,"targetAxis":enum (TargetAxis),"dimensions":[{object (Dimension)}],"measures":[{object (Measure)}],"breakdowns":[{object (Breakdown)}],"sort":[{object (ColumnSortingOptions)}]}
Fields
timeSeriesQuery

object (TimeSeriesQuery)

Required. Fields for querying time series data from the Stackdriver metrics API.

plotType

enum (PlotType)

How this data should be plotted on the chart.

legendTemplate

string

A template string for namingTimeSeries in the resulting data set. This should be a string with interpolations of the form${label_name}, which will resolve to the label's value.

minAlignmentPeriod

string (Duration format)

Optional. The lower bound on data point frequency for this data set, implemented by specifying the minimum alignment period to use in a time series query For example, if the data is published once every 10 minutes, theminAlignmentPeriod should be at least 10 minutes. It would not make sense to fetch and align data at one minute intervals.

targetAxis

enum (TargetAxis)

Optional. The target axis to use for plotting the metric.

dimensions[]

object (Dimension)

Optional. A collection of dimension columns.

measures[]

object (Measure)

Optional. A collection of measures.

breakdowns[]

object (Breakdown)

Optional. The collection of breakdowns to be applied to the dataset.

sort[]

object (ColumnSortingOptions)

Optional. A collection of sort options, affects the order of the data and legend.

TimeSeriesQuery

TimeSeriesQuery collects the set of supported methods for querying time series data from the Stackdriver metrics API.

JSON representation
{"unitOverride":string,"outputFullDuration":boolean,// Union fieldsource can be only one of the following:"timeSeriesFilter":{object (TimeSeriesFilter)},"timeSeriesFilterRatio":{object (TimeSeriesFilterRatio)},"timeSeriesQueryLanguage":string,"prometheusQuery":string,"opsAnalyticsQuery":{object (OpsAnalyticsQuery)}// End of list of possible types for union fieldsource.}
Fields
unitOverride

string

The unit of data contained in fetched time series. If non-empty, this unit will override any unit that accompanies fetched data. The format is the same as theunit field inMetricDescriptor.

outputFullDuration

boolean

Optional. If set, Cloud Monitoring will treat the full query duration as the alignment period so that there will be only 1 output value.

*Note: This could override the configured alignment period except for the cases where a series of data points are expected, like - XyChart - Scorecard's spark chart

Union fieldsource. Parameters needed to obtain data for the chart.source can be only one of the following:
timeSeriesFilter

object (TimeSeriesFilter)

Filter parameters to fetch time series.

timeSeriesFilterRatio

object (TimeSeriesFilterRatio)

Parameters to fetch a ratio between two time series filters.

timeSeriesQueryLanguage

string

A query used to fetch time series with MQL.

prometheusQuery

string

A query used to fetch time series with PromQL.

opsAnalyticsQuery

object (OpsAnalyticsQuery)

Preview: A query used to fetch a time series, category series, or numeric series with SQL. This is a preview feature and may be subject to change before final release.

TimeSeriesFilter

A filter that defines a subset of time series data that is displayed in a widget. Time series data is fetched using thetimeSeries.list method.

JSON representation
{"filter":string,"aggregation":{object (Aggregation)},"secondaryAggregation":{object (Aggregation)},// Union fieldoutput_filter can be only one of the following:"pickTimeSeriesFilter":{object (PickTimeSeriesFilter)}// End of list of possible types for union fieldoutput_filter.}
Fields
filter

string

Required. Themonitoring filter that identifies the metric types, resources, and projects to query.

aggregation

object (Aggregation)

By default, the raw time series data is returned. Use this field to combine multiple time series for different views of the data.

secondaryAggregation

object (Aggregation)

Apply a second aggregation afteraggregation is applied.

Union fieldoutput_filter. Selects an optional time series filter.output_filter can be only one of the following:
pickTimeSeriesFilter

object (PickTimeSeriesFilter)

Ranking based time series filter.

Aggregation

Describes how to combine multiple time series to provide a different view of the data. Aggregation of time series is done in two steps. First, each time series in the set isaligned to the same time interval boundaries, then the set of time series is optionallyreduced in number.

Alignment consists of applying theperSeriesAligner operation to each time series after its data has been divided into regularalignmentPeriod time intervals. This process takesall of the data points in an alignment period, applies a mathematical transformation such as averaging, minimum, maximum, delta, etc., and converts them into a single data point per period.

Reduction is when the aligned and transformed time series can optionally be combined, reducing the number of time series through similar mathematical transformations. Reduction involves applying acrossSeriesReducer to all the time series, optionally sorting the time series into subsets withgroupByFields, and applying the reducer to each subset.

The raw time series data can contain a huge amount of information from multiple sources. Alignment and reduction transforms this mass of data into a more manageable and representative collection of data, for example "the 95% latency across the average of all tasks in a cluster". This representative data can be more easily graphed and comprehended, and the individual time series data is still available for later drilldown. For more details, seeFiltering and aggregation.

JSON representation
{"alignmentPeriod":string,"perSeriesAligner":enum (Aligner),"crossSeriesReducer":enum (Reducer),"groupByFields":[string]}
Fields
alignmentPeriod

string (Duration format)

ThealignmentPeriod specifies a time interval, in seconds, that is used to divide the data in all thetime series into consistent blocks of time. This will be done before the per-series aligner can be applied to the data.

The value must be at least 60 seconds. If a per-series aligner other thanALIGN_NONE is specified, this field is required or an error is returned. If no per-series aligner is specified, or the alignerALIGN_NONE is specified, then this field is ignored.

The maximum value of thealignmentPeriod is 2 years, or 104 weeks.

perSeriesAligner

enum (Aligner)

AnAligner describes how to bring the data points in a single time series into temporal alignment. Except forALIGN_NONE, all alignments cause all the data points in analignmentPeriod to be mathematically grouped together, resulting in a single data point for eachalignmentPeriod with end timestamp at the end of the period.

Not all alignment operations may be applied to all time series. The valid choices depend on themetricKind andvalueType of the original time series. Alignment can change themetricKind or thevalueType of the time series.

Time series data must be aligned in order to perform cross-time series reduction. IfcrossSeriesReducer is specified, thenperSeriesAligner must be specified and not equal toALIGN_NONE andalignmentPeriod must be specified; otherwise, an error is returned.

crossSeriesReducer

enum (Reducer)

The reduction operation to be used to combine time series into a single time series, where the value of each data point in the resulting series is a function of all the already aligned values in the input time series.

Not all reducer operations can be applied to all time series. The valid choices depend on themetricKind and thevalueType of the original time series. Reduction can yield a time series with a differentmetricKind orvalueType than the input time series.

Time series data must first be aligned (seeperSeriesAligner) in order to perform cross-time series reduction. IfcrossSeriesReducer is specified, thenperSeriesAligner must be specified, and must not beALIGN_NONE. AnalignmentPeriod must also be specified; otherwise, an error is returned.

groupByFields[]

string

The set of fields to preserve whencrossSeriesReducer is specified. ThegroupByFields determine how the time series are partitioned into subsets prior to applying the aggregation operation. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. ThecrossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly containsresource.type. Fields not specified ingroupByFields are aggregated away. IfgroupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. IfcrossSeriesReducer is not defined, this field is ignored.

Aligner

TheAligner specifies the operation that will be applied to the data points in each alignment period in a time series. Except forALIGN_NONE, which specifies that no operation be applied, each alignment operation replaces the set of data values in each alignment period with a single value: the result of applying the operation to the data values. An aligned time series has a single data value at the end of eachalignmentPeriod.

An alignment operation can change the data type of the values, too. For example, if you apply a counting operation to boolean values, the datavalueType in the original time series isBOOLEAN, but thevalueType in the aligned result isINT64.

Enums
ALIGN_NONENo alignment. Raw data is returned. Not valid if cross-series reduction is requested. ThevalueType of the result is the same as thevalueType of the input.
ALIGN_DELTA

Align and convert toDELTA. The output isdelta = y1 - y0.

This alignment is valid forCUMULATIVE andDELTA metrics. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. ThevalueType of the aligned result is the same as thevalueType of the input.

ALIGN_RATE

Align and convert to a rate. The result is computed asrate = (y1 - y0)/(t1 - t0), or "delta over time". Think of this aligner as providing the slope of the line that passes through the value at the start and at the end of thealignmentPeriod.

This aligner is valid forCUMULATIVE andDELTA metrics with numeric values. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The output is aGAUGE metric withvalueTypeDOUBLE.

If, by "rate", you mean "percentage change", see theALIGN_PERCENT_CHANGE aligner instead.

ALIGN_INTERPOLATEAlign by interpolating between adjacent points around the alignment period boundary. This aligner is valid forGAUGE metrics with numeric values. ThevalueType of the aligned result is the same as thevalueType of the input.
ALIGN_NEXT_OLDERAlign by moving the most recent data point before the end of the alignment period to the boundary at the end of the alignment period. This aligner is valid forGAUGE metrics. ThevalueType of the aligned result is the same as thevalueType of the input.
ALIGN_MINAlign the time series by returning the minimum value in each alignment period. This aligner is valid forGAUGE andDELTA metrics with numeric values. ThevalueType of the aligned result is the same as thevalueType of the input.
ALIGN_MAXAlign the time series by returning the maximum value in each alignment period. This aligner is valid forGAUGE andDELTA metrics with numeric values. ThevalueType of the aligned result is the same as thevalueType of the input.
ALIGN_MEANAlign the time series by returning the mean value in each alignment period. This aligner is valid forGAUGE andDELTA metrics with numeric values. ThevalueType of the aligned result isDOUBLE.
ALIGN_COUNTAlign the time series by returning the number of values in each alignment period. This aligner is valid forGAUGE andDELTA metrics with numeric or Boolean values. ThevalueType of the aligned result isINT64.
ALIGN_SUMAlign the time series by returning the sum of the values in each alignment period. This aligner is valid forGAUGE andDELTA metrics with numeric and distribution values. ThevalueType of the aligned result is the same as thevalueType of the input.
ALIGN_STDDEVAlign the time series by returning the standard deviation of the values in each alignment period. This aligner is valid forGAUGE andDELTA metrics with numeric values. ThevalueType of the output isDOUBLE.
ALIGN_COUNT_TRUEAlign the time series by returning the number ofTrue values in each alignment period. This aligner is valid forGAUGE metrics with Boolean values. ThevalueType of the output isINT64.
ALIGN_COUNT_FALSEAlign the time series by returning the number ofFalse values in each alignment period. This aligner is valid forGAUGE metrics with Boolean values. ThevalueType of the output isINT64.
ALIGN_FRACTION_TRUEAlign the time series by returning the ratio of the number ofTrue values to the total number of values in each alignment period. This aligner is valid forGAUGE metrics with Boolean values. The output value is in the range [0.0, 1.0] and hasvalueTypeDOUBLE.
ALIGN_PERCENTILE_99Align the time series by usingpercentile aggregation. The resulting data point in each alignment period is the 99th percentile of all data points in the period. This aligner is valid forGAUGE andDELTA metrics with distribution values. The output is aGAUGE metric withvalueTypeDOUBLE.
ALIGN_PERCENTILE_95Align the time series by usingpercentile aggregation. The resulting data point in each alignment period is the 95th percentile of all data points in the period. This aligner is valid forGAUGE andDELTA metrics with distribution values. The output is aGAUGE metric withvalueTypeDOUBLE.
ALIGN_PERCENTILE_50Align the time series by usingpercentile aggregation. The resulting data point in each alignment period is the 50th percentile of all data points in the period. This aligner is valid forGAUGE andDELTA metrics with distribution values. The output is aGAUGE metric withvalueTypeDOUBLE.
ALIGN_PERCENTILE_05Align the time series by usingpercentile aggregation. The resulting data point in each alignment period is the 5th percentile of all data points in the period. This aligner is valid forGAUGE andDELTA metrics with distribution values. The output is aGAUGE metric withvalueTypeDOUBLE.
ALIGN_PERCENT_CHANGE

Align and convert to a percentage change. This aligner is valid forGAUGE andDELTA metrics with numeric values. This alignment returns((current - previous)/previous) * 100, where the value ofprevious is determined based on thealignmentPeriod.

If the values ofcurrent andprevious are both 0, then the returned value is 0. If onlyprevious is 0, the returned value is infinity.

A 10-minute moving mean is computed at each point of the alignment period prior to the above calculation to smooth the metric and prevent false positives from very short-lived spikes. The moving mean is only applicable for data whose values are>= 0. Any values< 0 are treated as a missing datapoint, and are ignored. WhileDELTA metrics are accepted by this alignment, special care should be taken that the values for the metric will always be positive. The output is aGAUGE metric withvalueTypeDOUBLE.

Reducer

A Reducer operation describes how to aggregate data points from multiple time series into a single time series, where the value of each data point in the resulting series is a function of all the already aligned values in the input time series.

Enums
REDUCE_NONENo cross-time series reduction. The output of theAligner is returned.
REDUCE_MEANReduce by computing the mean value across time series for each alignment period. This reducer is valid forDELTA andGAUGE metrics with numeric or distribution values. ThevalueType of the output isDOUBLE.
REDUCE_MINReduce by computing the minimum value across time series for each alignment period. This reducer is valid forDELTA andGAUGE metrics with numeric values. ThevalueType of the output is the same as thevalueType of the input.
REDUCE_MAXReduce by computing the maximum value across time series for each alignment period. This reducer is valid forDELTA andGAUGE metrics with numeric values. ThevalueType of the output is the same as thevalueType of the input.
REDUCE_SUMReduce by computing the sum across time series for each alignment period. This reducer is valid forDELTA andGAUGE metrics with numeric and distribution values. ThevalueType of the output is the same as thevalueType of the input.
REDUCE_STDDEVReduce by computing the standard deviation across time series for each alignment period. This reducer is valid forDELTA andGAUGE metrics with numeric or distribution values. ThevalueType of the output isDOUBLE.
REDUCE_COUNTReduce by computing the number of data points across time series for each alignment period. This reducer is valid forDELTA andGAUGE metrics of numeric, Boolean, distribution, and stringvalueType. ThevalueType of the output isINT64.
REDUCE_COUNT_TRUEReduce by computing the number ofTrue-valued data points across time series for each alignment period. This reducer is valid forDELTA andGAUGE metrics of BooleanvalueType. ThevalueType of the output isINT64.
REDUCE_COUNT_FALSEReduce by computing the number ofFalse-valued data points across time series for each alignment period. This reducer is valid forDELTA andGAUGE metrics of BooleanvalueType. ThevalueType of the output isINT64.
REDUCE_FRACTION_TRUEReduce by computing the ratio of the number ofTrue-valued data points to the total number of data points for each alignment period. This reducer is valid forDELTA andGAUGE metrics of BooleanvalueType. The output value is in the range [0.0, 1.0] and hasvalueTypeDOUBLE.
REDUCE_PERCENTILE_99Reduce by computing the99th percentile of data points across time series for each alignment period. This reducer is valid forGAUGE andDELTA metrics of numeric and distribution type. The value of the output isDOUBLE.
REDUCE_PERCENTILE_95Reduce by computing the95th percentile of data points across time series for each alignment period. This reducer is valid forGAUGE andDELTA metrics of numeric and distribution type. The value of the output isDOUBLE.
REDUCE_PERCENTILE_50Reduce by computing the50th percentile of data points across time series for each alignment period. This reducer is valid forGAUGE andDELTA metrics of numeric and distribution type. The value of the output isDOUBLE.
REDUCE_PERCENTILE_05Reduce by computing the5th percentile of data points across time series for each alignment period. This reducer is valid forGAUGE andDELTA metrics of numeric and distribution type. The value of the output isDOUBLE.

PickTimeSeriesFilter

Describes a ranking-based time series filter. Each input time series is ranked with an aligner. The filter will allow up tonumTimeSeries time series to pass through it, selecting them based on the relative ranking.

For example, ifrankingMethod isMETHOD_MEAN,direction isBOTTOM, andnumTimeSeries is 3, then the 3 times series with the lowest mean values will pass through the filter.

JSON representation
{"rankingMethod":enum (Method),"numTimeSeries":integer,"direction":enum (Direction),"interval":{object (Interval)}}
Fields
rankingMethod

enum (Method)

rankingMethod is applied to each time series independently to produce the value which will be used to compare the time series to other time series.

numTimeSeries

integer

How many time series to allow to pass through the filter.

direction

enum (Direction)

How to use the ranking to select time series that pass through the filter.

interval

object (Interval)

Select the top N streams/time series within this time interval

Method

The value reducers that can be applied to aPickTimeSeriesFilter.

Enums
METHOD_UNSPECIFIEDNot allowed. You must specify a differentMethod if you specify aPickTimeSeriesFilter.
METHOD_MEANSelect the mean of all values.
METHOD_MAXSelect the maximum value.
METHOD_MINSelect the minimum value.
METHOD_SUMCompute the sum of all values.
METHOD_LATESTSelect the most recent value.

Direction

Describes the ranking directions.

Enums
DIRECTION_UNSPECIFIEDNot allowed. You must specify a differentDirection if you specify aPickTimeSeriesFilter.
TOPPass the highestnumTimeSeries ranking inputs.
BOTTOMPass the lowestnumTimeSeries ranking inputs.

Interval

Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive).

The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time.

JSON representation
{"startTime":string,"endTime":string}
Fields
startTime

string (Timestamp format)

Optional. Inclusive start of the interval.

If specified, a Timestamp matching this interval will have to be the same or after the start.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:"2014-10-02T15:01:23Z","2014-10-02T15:01:23.045123456Z" or"2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Optional. Exclusive end of the interval.

If specified, a Timestamp matching this interval will have to be before the end.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:"2014-10-02T15:01:23Z","2014-10-02T15:01:23.045123456Z" or"2014-10-02T15:01:23+05:30".

TimeSeriesFilterRatio

A pair of time series filters that define a ratio computation. The output time series is the pair-wise division of each aligned element from the numerator and denominator time series.

JSON representation
{"numerator":{object (RatioPart)},"denominator":{object (RatioPart)},"secondaryAggregation":{object (Aggregation)},// Union fieldoutput_filter can be only one of the following:"pickTimeSeriesFilter":{object (PickTimeSeriesFilter)}// End of list of possible types for union fieldoutput_filter.}
Fields
numerator

object (RatioPart)

The numerator of the ratio.

denominator

object (RatioPart)

The denominator of the ratio.

secondaryAggregation

object (Aggregation)

Apply a second aggregation after the ratio is computed.

Union fieldoutput_filter. Selects an optional filter that is applied to the time series after computing the ratio.output_filter can be only one of the following:
pickTimeSeriesFilter

object (PickTimeSeriesFilter)

Ranking based time series filter.

RatioPart

Describes a query to build the numerator or denominator of a TimeSeriesFilterRatio.

JSON representation
{"filter":string,"aggregation":{object (Aggregation)}}
Fields
filter

string

Required. Themonitoring filter that identifies the metric types, resources, and projects to query.

aggregation

object (Aggregation)

By default, the raw time series data is returned. Use this field to combine multiple time series for different views of the data.

OpsAnalyticsQuery

Preview: A query that produces an aggregated response and supporting data. This is a preview feature and may be subject to change before final release.

JSON representation
{"sql":string}
Fields
sql

string

A SQL query to fetch time series, category series, or numeric series data.

PlotType

The types of plotting strategies for data sets.

Enums
PLOT_TYPE_UNSPECIFIEDPlot type is unspecified. The view will default toLINE.
LINEThe data is plotted as a set of lines (one line per series).
STACKED_AREAThe data is plotted as a set of filled areas (one area per series), with the areas stacked vertically (the base of each area is the top of its predecessor, and the base of the first area is the x-axis). Since the areas do not overlap, each is filled with a different opaque color.
STACKED_BARThe data is plotted as a set of rectangular boxes (one box per series), with the boxes stacked vertically (the base of each box is the top of its predecessor, and the base of the first box is the x-axis). Since the boxes do not overlap, each is filled with a different opaque color.
HEATMAPThe data is plotted as a heatmap. The series being plotted must have aDISTRIBUTION value type. The value of each bucket in the distribution is displayed as a color. This type is not currently available in the Stackdriver Monitoring application.

TargetAxis

An axis identifier.

Enums
TARGET_AXIS_UNSPECIFIEDThe target axis was not specified. Defaults to Y1.
Y1The yAxis (the right axis of chart).
Y2The y2Axis (the left axis of chart).

Dimension

A chart dimension. Dimensions are a structured label, class, or category for a set of measurements in your data.

JSON representation
{"column":string,"columnType":string,"maxBinCount":integer,"sortOrder":enum (SortOrder),"sortColumn":string,// Union fieldbin_size can be only one of the following:"timeBinSize":string,"numericBinSize":integer,"floatBinSize":number// End of list of possible types for union fieldbin_size.}
Fields
column

string

Required. For widgets that use SQL queries, set the value to the name of the column in the results table whose data is charted. For a histogram that uses a time series query, set the value of this field tometric_value.

columnType

string

Optional. The type of the dimension column. This is relevant only if one of the bin_size fields is set. If it is empty, the type TIMESTAMP or INT64 will be assumed based on which bin_size field is set. If populated, this should be set to one of the following types: DATE, TIME, DATETIME, TIMESTAMP, BIGNUMERIC, INT64, NUMERIC, FLOAT64.

maxBinCount

integer

For widgets that use SQL queries, the limit to the number of bins to generate. When 0 is specified, the maximum count is not enforced. For a histogram that uses a time series query, the exact number of bins to generate. If not specified or the value is 0, then the histogram determines the number of bins to use.

sortOrder

enum (SortOrder)

The sort order applied to the sort column.

sortColumn

string

The column name to sort on for binning. This column can be the same column as this dimension or any other column used as a measure in the results. IfsortOrder is set toNONE, then this value is not used.

Union fieldbin_size. The values ofbin_size are used to configure the grouping of points for the dimension specified by thecolumn field.bin_size can be only one of the following:
timeBinSize

string (Duration format)

timeBinSize is used when the data type of the specified dimension is a time type and the bin size is determined by a time duration. IfcolumnType isDATE, this must be a whole value multiple of 1 day. IfcolumnType isTIME, this must be less than or equal to 24 hours.

numericBinSize

integer

numericBinSize is used when the column type used for a dimension is numeric or string. If thecolumn field is set tometric_value, thennumericBinSize overridesmaxBinCount.

floatBinSize

number

Optional.floatBinSize is used when the column type used for a dimension is a floating point numeric column.

SortOrder

Sort order options.

Enums
SORT_ORDER_UNSPECIFIEDAn unspecified sort order. This option is invalid when sorting is required.
SORT_ORDER_NONENo sorting is applied.
SORT_ORDER_ASCENDINGThe lowest-valued entries are selected first.
SORT_ORDER_DESCENDINGThe highest-valued entries are selected first.

Measure

A chart measure. Measures represent a measured property in your chart data such as rainfall in inches, number of units sold, revenue gained, etc.

JSON representation
{"column":string,"aggregationFunction":{object (AggregationFunction)}}
Fields
column

string

Required. The column name within in the dataset used for the measure.

aggregationFunction

object (AggregationFunction)

Required. The aggregation function applied to the input column. This must not be set to"none" unless binning is disabled on the dimension. The aggregation function is used to group points on the dimension bins.

AggregationFunction

Preview: An identifier for an aggregation function. Aggregation functions are SQL functions that group or transform data from multiple points to a single point. This is a preview feature and may be subject to change before final release.

JSON representation
{"type":string,"parameters":[{object (Parameter)}]}
Fields
type

string

Required. The type of aggregation function, must be one of the following:

  • "none" - no function.
  • "percentile" - APPROX_QUANTILES() - 1 parameter numeric value
  • "average" - AVG()
  • "count" - COUNT()
  • "count-distinct" - COUNT(DISTINCT)
  • "count-distinct-approx" - APPROX_COUNT_DISTINCT()
  • "max" - MAX()
  • "min" - MIN()
  • "sum" - SUM()
parameters[]

object (Parameter)

Optional. Parameters applied to the aggregation function. Only used for functions that require them.

Parameter

Preview: Parameter value applied to the aggregation function. This is a preview feature and may be subject to change before final release.

JSON representation
{// Union fieldvalue can be only one of the following:"intValue":string,"doubleValue":number// End of list of possible types for union fieldvalue.}
Fields
Union fieldvalue. Parameter value.value can be only one of the following:
intValue

string (int64 format)

An integer parameter value.

doubleValue

number

A floating-point parameter value.

Breakdown

Preview: A breakdown is an aggregation applied to the measures over a specified column. A breakdown can result in multiple series across a category for the provided measure. This is a preview feature and may be subject to change before final release.

JSON representation
{"column":string,"limit":integer,"aggregationFunction":{object (AggregationFunction)},"sortOrder":enum (SortOrder)}
Fields
column

string

Required. The name of the column in the dataset containing the breakdown values.

limit

integer

Required. A limit to the number of breakdowns. If set to zero then all possible breakdowns are applied. The list of breakdowns is dependent on the value of thesortOrder field.

aggregationFunction

object (AggregationFunction)

Required. The Aggregation function is applied across all data in each breakdown created.

sortOrder

enum (SortOrder)

Required. The sort order is applied to the values of the breakdown column.

ColumnSortingOptions

Data structure to storing column's sort strategy

JSON representation
{"column":string,"direction":enum (SortOrder)}
Fields
column

string

Optional. Column name to sort data by

direction

enum (SortOrder)

Optional. A sorting direction that determines ascending or descending order. This is a legacy field kept for backwards compatibility with table.

Threshold

Defines a threshold for categorizing time series values.

JSON representation
{"label":string,"value":number,"color":enum (Color),"direction":enum (Direction),"targetAxis":enum (TargetAxis)}
Fields
label

string

A label for the threshold.

value

number

The value of the threshold. The value should be defined in the native scale of the metric.

color

enum (Color)

The state color for this threshold. Color is not allowed in a XyChart.

direction

enum (Direction)

The direction for the current threshold. Direction is not allowed in a XyChart.

targetAxis

enum (TargetAxis)

The target axis to use for plotting the threshold. Target axis is not allowed in a Scorecard.

Color

The color suggests an interpretation to the viewer when actual values cross the threshold. Comments on each color provide UX guidance on how users can be expected to interpret a given state color.

Enums
COLOR_UNSPECIFIEDColor is unspecified. Not allowed in well-formed requests.
YELLOWCrossing the threshold is "concerning" behavior.
REDCrossing the threshold is "emergency" behavior.

Direction

Whether the threshold is considered crossed by an actual value above or below its threshold value.

Enums
DIRECTION_UNSPECIFIEDNot allowed in well-formed requests.
ABOVEThe threshold will be considered crossed if the actual value is above the threshold value.
BELOWThe threshold will be considered crossed if the actual value is below the threshold value.

TargetAxis

An axis identifier.

Enums
TARGET_AXIS_UNSPECIFIEDThe target axis was not specified. Defaults to Y1.
Y1The yAxis (the right axis of chart).
Y2The y2Axis (the left axis of chart).

Axis

A chart axis.

JSON representation
{"label":string,"scale":enum (Scale)}
Fields
label

string

The label of the axis.

scale

enum (Scale)

The axis scale. By default, a linear scale is used.

Scale

Types of scales used in axes.

Enums
SCALE_UNSPECIFIEDScale is unspecified. The view will default toLINEAR.
LINEARLinear scale.
LOG10Logarithmic scale (base 10).

ChartOptions

Options to control visual rendering of a chart.

JSON representation
{"mode":enum (Mode),"displayHorizontal":boolean}
Fields
mode

enum (Mode)

The chart mode.

displayHorizontal

boolean

Preview: Configures whether the charted values are shown on the horizontal or vertical axis. By default, values are represented the vertical axis. This is a preview feature and may be subject to change before final release.

Mode

Chart mode options.

Enums
MODE_UNSPECIFIEDMode is unspecified. The view will default toCOLOR.
COLORThe chart distinguishes data series using different color. Line colors may get reused when there are many lines in the chart.
X_RAYThe chart uses the Stackdriver x-ray mode, in which each data set is plotted using the same semi-transparent color.
STATSThe chart displays statistics such as average, median, 95th percentile, and more.

Scorecard

A widget showing the latest value of a metric, and how this value relates to one or more thresholds.

JSON representation
{"timeSeriesQuery":{object (TimeSeriesQuery)},"thresholds":[{object (Threshold)}],"dimensions":[{object (Dimension)}],"measures":[{object (Measure)}],"breakdowns":[{object (Breakdown)}],// Union fielddata_view can be only one of the following:"gaugeView":{object (GaugeView)},"sparkChartView":{object (SparkChartView)},"blankView":{object}// End of list of possible types for union fielddata_view.}
Fields
timeSeriesQuery

object (TimeSeriesQuery)

Required. Fields for querying time series data from the Stackdriver metrics API.

thresholds[]

object (Threshold)

The thresholds used to determine the state of the scorecard given the time series' current value. For an actual value x, the scorecard is in a danger state if x is less than or equal to a danger threshold that triggers below, or greater than or equal to a danger threshold that triggers above. Similarly, if x is above/below a warning threshold that triggers above/below, then the scorecard is in a warning state - unless x also puts it in a danger state. (Danger trumps warning.)

As an example, consider a scorecard with the following four thresholds:

{  value: 90,  category: 'DANGER',  trigger: 'ABOVE',},{  value: 70,  category: 'WARNING',  trigger: 'ABOVE',},{  value: 10,  category: 'DANGER',  trigger: 'BELOW',},{  value: 20,  category: 'WARNING',  trigger: 'BELOW',}

Then: values less than or equal to 10 would put the scorecard in a DANGER state, values greater than 10 but less than or equal to 20 a WARNING state, values strictly between 20 and 70 an OK state, values greater than or equal to 70 but less than 90 a WARNING state, and values greater than or equal to 90 a DANGER state.

dimensions[]

object (Dimension)

Optional. A dimension is a structured label, class, or category for a set of measurements in your data.

measures[]

object (Measure)

Optional. A measure is a measured value of a property in your data. For example, rainfall in inches, number of units sold, revenue gained, etc.

breakdowns[]

object (Breakdown)

Optional. The collection of breakdowns to be applied to the dataset. A breakdown is a way to slice the data. For example, you can break down the data by region.

Union fielddata_view. Defines the optional additional chart shown on the scorecard. If neither is included - then a default scorecard is shown.data_view can be only one of the following:
gaugeView

object (GaugeView)

Will cause the scorecard to show a gauge chart.

sparkChartView

object (SparkChartView)

Will cause the scorecard to show a spark chart.

blankView

object

Will cause theScorecard to show only the value, with no indicator to its value relative to its thresholds.

GaugeView

A gauge chart shows where the current value sits within a pre-defined range. The upper and lower bounds should define the possible range of values for the scorecard's query (inclusive).

JSON representation
{"lowerBound":number,"upperBound":number}
Fields
lowerBound

number

The lower bound for this gauge chart. The value of the chart should always be greater than or equal to this.

upperBound

number

The upper bound for this gauge chart. The value of the chart should always be less than or equal to this.

SparkChartView

A sparkChart is a small chart suitable for inclusion in a table-cell or inline in text. This message contains the configuration for a sparkChart to show up on a Scorecard, showing recent trends of the scorecard's timeseries.

JSON representation
{"sparkChartType":enum (SparkChartType),"minAlignmentPeriod":string}
Fields
sparkChartType

enum (SparkChartType)

Required. The type of sparkchart to show in this chartView.

minAlignmentPeriod

string (Duration format)

The lower bound on data point frequency in the chart implemented by specifying the minimum alignment period to use in a time series query. For example, if the data is published once every 10 minutes it would not make sense to fetch and align data at one minute intervals. This field is optional and exists only as a hint.

SparkChartType

Defines the possible types of spark chart supported by theScorecard.

Enums
SPARK_CHART_TYPE_UNSPECIFIEDNot allowed in well-formed requests.
SPARK_LINEThe sparkline will be rendered as a small line chart.
SPARK_BARThe sparkbar will be rendered as a small bar chart.

Text

A widget that displays textual content.

JSON representation
{"content":string,"format":enum (Format),"style":{object (TextStyle)}}
Fields
content

string

The text content to be displayed.

format

enum (Format)

How the text content is formatted.

style

object (TextStyle)

How the text is styled

Format

The format type of the text content.

Enums
FORMAT_UNSPECIFIEDFormat is unspecified. Defaults to MARKDOWN.
MARKDOWNThe text contains Markdown formatting.
RAWThe text contains no special formatting.

TextStyle

Properties that determine how the title and content are styled

JSON representation
{"backgroundColor":string,"textColor":string,"horizontalAlignment":enum (HorizontalAlignment),"verticalAlignment":enum (VerticalAlignment),"padding":enum (PaddingSize),"fontSize":enum (FontSize),"pointerLocation":enum (PointerLocation)}
Fields
backgroundColor

string

The background color as a hex string. "#RRGGBB" or "#RGB"

textColor

string

The text color as a hex string. "#RRGGBB" or "#RGB"

horizontalAlignment

enum (HorizontalAlignment)

The horizontal alignment of both the title and content

verticalAlignment

enum (VerticalAlignment)

The vertical alignment of both the title and content

padding

enum (PaddingSize)

The amount of padding around the widget

fontSize

enum (FontSize)

Font sizes for both the title and content. The title will still be larger relative to the content.

pointerLocation

enum (PointerLocation)

The pointer location for this widget (also sometimes called a "tail")

HorizontalAlignment

The horizontal alignment of both the title and content on a text widget

Enums
HORIZONTAL_ALIGNMENT_UNSPECIFIEDNo horizontal alignment specified, will default to H_LEFT
H_LEFTLeft-align
H_CENTERCenter-align
H_RIGHTRight-align

VerticalAlignment

The vertical alignment of both the title and content on a text widget

Enums
VERTICAL_ALIGNMENT_UNSPECIFIEDNo vertical alignment specified, will default to V_TOP
V_TOPTop-align
V_CENTERCenter-align
V_BOTTOMBottom-align

PaddingSize

Specifies padding size around a text widget

Enums
PADDING_SIZE_UNSPECIFIEDNo padding size specified, will default to P_EXTRA_SMALL
P_EXTRA_SMALLExtra small padding
P_SMALLSmall padding
P_MEDIUMMedium padding
P_LARGELarge padding
P_EXTRA_LARGEExtra large padding

FontSize

Specifies a font size for the title and content of a text widget

Enums
FONT_SIZE_UNSPECIFIEDNo font size specified, will default to FS_LARGE
FS_EXTRA_SMALLExtra small font size
FS_SMALLSmall font size
FS_MEDIUMMedium font size
FS_LARGELarge font size
FS_EXTRA_LARGEExtra large font size

PointerLocation

Specifies where a visual pointer is placed on a text widget (also sometimes called a "tail")

Enums
POINTER_LOCATION_UNSPECIFIEDNo visual pointer
PL_TOPPlaced in the middle of the top of the widget
PL_RIGHTPlaced in the middle of the right side of the widget
PL_BOTTOMPlaced in the middle of the bottom of the widget
PL_LEFTPlaced in the middle of the left side of the widget
PL_TOP_LEFTPlaced on the left side of the top of the widget
PL_TOP_RIGHTPlaced on the right side of the top of the widget
PL_RIGHT_TOPPlaced on the top of the right side of the widget
PL_RIGHT_BOTTOMPlaced on the bottom of the right side of the widget
PL_BOTTOM_RIGHTPlaced on the right side of the bottom of the widget
PL_BOTTOM_LEFTPlaced on the left side of the bottom of the widget
PL_LEFT_BOTTOMPlaced on the bottom of the left side of the widget
PL_LEFT_TOPPlaced on the top of the left side of the widget

AlertChart

A chart that displays alert policy data.

JSON representation
{"name":string}
Fields
name

string

Required. The resource name of the alert policy. The format is:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]

TimeSeriesTable

A table that displays time series data.

JSON representation
{"dataSets":[{object (TableDataSet)}],"metricVisualization":enum (MetricVisualization),"columnSettings":[{object (ColumnSettings)}]}
Fields
dataSets[]

object (TableDataSet)

Required. The data displayed in this table.

metricVisualization

enum (MetricVisualization)

Optional. Store rendering strategy

columnSettings[]

object (ColumnSettings)

Optional. The list of the persistent column settings for the table.

TableDataSet

Groups a time series query definition with table options.

JSON representation
{"timeSeriesQuery":{object (TimeSeriesQuery)},"tableTemplate":string,"minAlignmentPeriod":string,"tableDisplayOptions":{object (TableDisplayOptions)}}
Fields
timeSeriesQuery

object (TimeSeriesQuery)

Required. Fields for querying time series data from the Stackdriver metrics API.

tableTemplate

string

Optional. A template string for namingTimeSeries in the resulting data set. This should be a string with interpolations of the form${label_name}, which will resolve to the label's value i.e. "${resource.labels.project_id}."

minAlignmentPeriod

string (Duration format)

Optional. The lower bound on data point frequency for this data set, implemented by specifying the minimum alignment period to use in a time series query For example, if the data is published once every 10 minutes, theminAlignmentPeriod should be at least 10 minutes. It would not make sense to fetch and align data at one minute intervals.

tableDisplayOptions

object (TableDisplayOptions)

Optional. Table display options for configuring how the table is rendered.

TableDisplayOptions

Table display options that can be reused.

JSON representation
{"shownColumns":[string]}
Fields
shownColumns[]
(deprecated)

string

This item is deprecated!

Optional. This field is unused and has been replaced by TimeSeriesTable.column_settings

MetricVisualization

Enum for metric metricVisualization

Enums
METRIC_VISUALIZATION_UNSPECIFIEDUnspecified state
NUMBERDefault text rendering
BARHorizontal bar rendering

ColumnSettings

The persistent settings for a table's columns.

JSON representation
{"column":string,"visible":boolean,"alignment":enum (CellAlignment),"displayName":string,"thresholds":[{object (Threshold)}]}
Fields
column

string

Required. The id of the column.

visible

boolean

Required. Whether the column should be visible on page load.

alignment

enum (CellAlignment)

Optional. Whether the column should be left / middle / right aligned

displayName

string

Optional. Display name of the column

thresholds[]

object (Threshold)

Optional. The thresholds used to determine how the table cell should be rendered given the time series' current value.

CellAlignment

The horizontal alignment of table cells in that column

Enums
CELL_ALIGNMENT_UNSPECIFIEDNo horizontal alignment specified; fall back to the default behavior. Label values are left aligned. Numeric values are right aligned.
LEFTLeft-align
CENTERCenter-align
RIGHTRight-align

CollapsibleGroup

A widget that groups the other widgets. All widgets that are within the area spanned by the grouping widget are considered member widgets.

JSON representation
{"collapsed":boolean}
Fields
collapsed

boolean

The collapsed state of the widget on first page load.

LogsPanel

A widget that displays a stream of log.

JSON representation
{"filter":string,"resourceNames":[string]}
Fields
filter

string

A filter that chooses which log entries to return. SeeAdvanced Logs Queries. Only log entries that match the filter are returned. An empty filter matches all log entries.

resourceNames[]

string

The names of logging resources to collect logs for. Currently projects and storage views are supported. If empty, the widget will default to the host project.

IncidentList

A widget that displays a list of incidents

JSON representation
{"monitoredResources":[{object (MonitoredResource)}],"policyNames":[string]}
Fields
monitoredResources[]

object (MonitoredResource)

Optional. The monitored resource for which incidents are listed. The resource doesn't need to be fully specified. That is, you can specify the resource type but not the values of the resource labels. The resource type and labels are used for filtering.

policyNames[]

string

Optional. A list of alert policy names to filter the incident list by. Don't include the project ID prefix in the policy name. For example, usealertPolicies/utilization.

PieChart

A widget that displays timeseries data as a pie or a donut.

JSON representation
{"dataSets":[{object (PieChartDataSet)}],"chartType":enum (PieChartType),"showLabels":boolean}
Fields
dataSets[]

object (PieChartDataSet)

Required. The queries for the chart's data.

chartType

enum (PieChartType)

Required. Indicates the visualization type for the PieChart.

showLabels

boolean

Optional. Indicates whether or not the pie chart should show slices' labels

PieChartDataSet

Groups a time series query definition.

JSON representation
{"timeSeriesQuery":{object (TimeSeriesQuery)},"sliceNameTemplate":string,"minAlignmentPeriod":string,"dimensions":[{object (Dimension)}],"measures":[{object (Measure)}]}
Fields
timeSeriesQuery

object (TimeSeriesQuery)

Required. The query for the PieChart. See,google.monitoring.dashboard.v1.TimeSeriesQuery.

sliceNameTemplate

string

Optional. A template for the name of the slice. This name will be displayed in the legend and the tooltip of the pie chart. It replaces the auto-generated names for the slices. For example, if the template is set to${resource.labels.zone}, the zone's value will be used for the name instead of the default name.

minAlignmentPeriod

string (Duration format)

Optional. The lower bound on data point frequency for this data set, implemented by specifying the minimum alignment period to use in a time series query. For example, if the data is published once every 10 minutes, theminAlignmentPeriod should be at least 10 minutes. It would not make sense to fetch and align data at one minute intervals.

dimensions[]

object (Dimension)

A dimension is a structured label, class, or category for a set of measurements in your data.

measures[]

object (Measure)

A measure is a measured value of a property in your data. For example, rainfall in inches, number of units sold, revenue gained, etc.

PieChartType

Types for the pie chart.

Enums
PIE_CHART_TYPE_UNSPECIFIEDThe zero value. No type specified. Do not use.
PIEA Pie type PieChart.
DONUTSimilar to PIE, but the DONUT type PieChart has a hole in the middle.

Treemap

A widget that displays hierarchical data as a treemap.

JSON representation
{"dataSets":[{object (TreemapDataSet)}],"treemapHierarchy":[string]}
Fields
dataSets[]

object (TreemapDataSet)

Required. The collection of datasets used to construct and populate the treemap. For the rendered treemap rectangles:

  • Color is determined by the aggregated value for each grouping.
  • Size is proportional to the count of time series aggregated within that rectangle's segment.
treemapHierarchy[]

string

Required. Ordered labels representing the hierarchical treemap structure.

TreemapDataSet

The data represented by the treemap. Needs to include the data itself, plus rules on how to organize it hierarchically.

JSON representation
{"timeSeriesQuery":{object (TimeSeriesQuery)},"measures":[{object (Measure)}],"breakdowns":[{object (Breakdown)}]}
Fields
timeSeriesQuery

object (TimeSeriesQuery)

Required. The query that fetches the relevant data. Seegoogle.monitoring.dashboard.v1.TimeSeriesQuery

measures[]

object (Measure)

Optional. A collection of measures. A measure is a measured value of a property in your data. For example, rainfall in inches, number of units sold, revenue gained, etc.

breakdowns[]

object (Breakdown)

Optional. The collection of breakdowns to be applied to the dataset. A breakdown is a way to slice the data. For example, you can break down the data by region.

ErrorReportingPanel

A widget that displays a list of error groups.

JSON representation
{"projectNames":[string],"services":[string],"versions":[string]}
Fields
projectNames[]

string

The resource name of the Google Cloud Platform project. Written asprojects/{projectID} orprojects/{projectNumber}, where{projectID} and{projectNumber} can be found in theGoogle Cloud console.

Examples:projects/my-project-123,projects/5551234.

services[]

string

An identifier of the service, such as the name of the executable, job, or Google App Engine service name. This field is expected to have a low number of values that are relatively stable over time, as opposed toversion, which can be changed whenever new code is deployed.

Contains the service name for error reports extracted from Google App Engine logs ordefault if the App Engine default service is used.

versions[]

string

Represents the source code version that the developer provided, which could represent a version label or a Git SHA-1 hash, for example. For App Engine standard environment, the version is set to the version of the app.

SectionHeader

A widget that defines a new section header. Sections populate a table of contents and allow easier navigation of long-form content.

JSON representation
{"subtitle":string,"dividerBelow":boolean}
Fields
subtitle

string

The subtitle of the section

dividerBelow

boolean

Whether to insert a divider below the section in the table of contents

SingleViewGroup

A widget that groups the other widgets by using a dropdown menu. All widgets that are within the area spanned by the grouping widget are considered member widgets.

JSON representation
{"displayType":enum (DisplayType)}
Fields
displayType

enum (DisplayType)

Optional. Determines how the widget selector will be displayed.

DisplayType

A type indicating how the wiget selector will be displayed.

Enums
DISPLAY_TYPE_UNSPECIFIEDDisplay type is not specified, defaults to DROPDOWN.
DROPDOWNRenders the widget selector as a dropdown.
TABRenders the widget selector as a tab list.

FilterControl

A widget that displays an input field to change the value of a template variable.

JSON representation
{"templateVariable":string}
Fields
templateVariable

string

Name of the template variable the widget affects.

VisibilityCondition

Condition that determines whether the widget should be displayed.

JSON representation
{"templateVariableCondition":{object (TemplateVariableCondition)}}
Fields
templateVariableCondition

object (TemplateVariableCondition)

A condition whose evaluation is based on the value of a template variable.

TemplateVariableCondition

A condition whose evaluation is based on the value of a template variable.

JSON representation
{"templateVariable":string,"templateVariableValue":string,"comparator":enum (Comparator)}
Fields
templateVariable

string

The template variable whose value is evaluated.

templateVariableValue

string

The value to compare the template variable to. For example, if the comparator is REGEX_FULL_MATCH, this field should contain a regex.

comparator

enum (Comparator)

Comparator to use to evaluate whether the value of the template variable matches the templateVariableValue. For example, if the comparator is REGEX_FULL_MATCH, templateVariableValue would contain a regex that is matched against the value of the template variable.

Comparator

Comparator options to evaluate when the template variable value matches.

Enums
COMPARATOR_UNSPECIFIEDNo comparator specified. Behavior defaults to REGEX_FULL_MATCH.
REGEX_FULL_MATCHCondition with this comparator evaluates to true when the value of the template variables matches the specified regex.

MosaicLayout

A mosaic layout divides the available space into a grid of blocks, and overlays the grid with tiles. UnlikeGridLayout, tiles may span multiple grid blocks and can be placed at arbitrary locations in the grid.

JSON representation
{"columns":integer,"tiles":[{object (Tile)}]}
Fields
columns

integer

The number of columns in the mosaic grid. The number of columns must be between 1 and 48, inclusive.

tiles[]

object (Tile)

The tiles to display.

Tile

A single tile in the mosaic. The placement and size of the tile are configurable.

JSON representation
{"xPos":integer,"yPos":integer,"width":integer,"height":integer,"widget":{object (Widget)}}
Fields
xPos

integer

The zero-indexed position of the tile in grid blocks relative to the left edge of the grid. Tiles must be contained within the specified number of columns.xPos cannot be negative.

yPos

integer

The zero-indexed position of the tile in grid blocks relative to the top edge of the grid.yPos cannot be negative.

width

integer

The width of the tile, measured in grid blocks. Tiles must have a minimum width of 1.

height

integer

The height of the tile, measured in grid blocks. Tiles must have a minimum height of 1.

widget

object (Widget)

The informational widget contained in the tile. For example anXyChart.

RowLayout

A simplified layout that divides the available space into rows and arranges a set of widgets horizontally in each row.

JSON representation
{"rows":[{object (Row)}]}
Fields
rows[]

object (Row)

The rows of content to display.

Row

Defines the layout properties and content for a row.

JSON representation
{"weight":string,"widgets":[{object (Widget)}]}
Fields
weight

string (int64 format)

The relative weight of this row. The row weight is used to adjust the height of rows on the screen (relative to peers). Greater the weight, greater the height of the row on the screen. If omitted, a value of 1 is used while rendering.

widgets[]

object (Widget)

The display widgets arranged horizontally in this row.

ColumnLayout

A simplified layout that divides the available space into vertical columns and arranges a set of widgets vertically in each column.

JSON representation
{"columns":[{object (Column)}]}
Fields
columns[]

object (Column)

The columns of content to display.

Column

Defines the layout properties and content for a column.

JSON representation
{"weight":string,"widgets":[{object (Widget)}]}
Fields
weight

string (int64 format)

The relative weight of this column. The column weight is used to adjust the width of columns on the screen (relative to peers). Greater the weight, greater the width of the column on the screen. If omitted, a value of 1 is used while rendering.

widgets[]

object (Widget)

The display widgets arranged vertically in this column.

DashboardFilter

A filter to reduce the amount of data charted in relevant widgets.

JSON representation
{"labelKey":string,"templateVariable":string,"valueType":enum (ValueType),"filterType":enum (FilterType),// Union fielddefault_value can be only one of the following:"stringValue":string,"stringArrayValue":{object (StringArray)}// End of list of possible types for union fielddefault_value.// Union fieldvalue_source can be only one of the following:"timeSeriesQuery":{object (TimeSeriesQuery)},"stringArray":{object (StringArray)}// End of list of possible types for union fieldvalue_source.}
Fields
labelKey

string

Optional. The key for the label. This must be omitted if the filterType is VALUE_ONLY but is required otherwise.

templateVariable

string

The placeholder text that can be referenced in a filter string or MQL query. If omitted, the dashboard filter will be applied to all relevant widgets in the dashboard.

valueType

enum (ValueType)

The type of the filter value. If valueType is not provided, it will be inferred from the defaultValue. If neither valueType nor defaultValue is provided, valueType will be set to STRING by default.

filterType

enum (FilterType)

The specified filter type

Union fielddefault_value. The default value used in the filter comparisondefault_value can be only one of the following:
stringValue

string

A variable-length string value. If this field is set, valueType must be set to STRING or VALUE_TYPE_UNSPECIFIED

stringArrayValue

object (StringArray)

An array of variable-length string values. If this field is set, valueType must be set to STRING_ARRAY or VALUE_TYPE_UNSPECIFIED

Union fieldvalue_source. A definition of the set of valid values for the filter. This is optional but recommended for VALUE_ONLY filters. For other filter types, the set of valid values will be inferred from the charted data.value_source can be only one of the following:
timeSeriesQuery

object (TimeSeriesQuery)

A query to run to fetch possible values for the filter. Only OpsAnalyticsQueries are supported

stringArray

object (StringArray)

A list of possible string values for the filter

ValueType

The type of the filter value

Enums
VALUE_TYPE_UNSPECIFIEDValue type is unspecified
STRINGString type
STRING_ARRAYString array type

StringArray

An array of strings

JSON representation
{"values":[string]}
Fields
values[]

string

The values of the array

FilterType

The type for the dashboard filter

Enums
FILTER_TYPE_UNSPECIFIEDFilter type is unspecified. This is not valid in a well-formed request.
RESOURCE_LABELFilter on a resource label value
METRIC_LABELFilter on a metrics label value
USER_METADATA_LABELFilter on a user metadata label value
SYSTEM_METADATA_LABELFilter on a system metadata label value
GROUPFilter on a group id
VALUE_ONLYFilter that only contains a value. The labelKey field must be unset for filters of this type.

DashboardAnnotations

Dashboard-level configuration for annotations

JSON representation
{"defaultResourceNames":[string],"eventAnnotations":[{object (EventAnnotation)}]}
Fields
defaultResourceNames[]

string

Dashboard level defaults for names of logging resources to search for events. Currently only projects are supported. Each individualEventAnnotation may have its own overrides. If both this field and the per annotation field is empty, then the scoping project is used. Limit: 50 projects. For example:

“projects/some-project-id”
eventAnnotations[]

object (EventAnnotation)

List of annotation configurations for this dashboard. Each entry specifies one event type.

EventAnnotation

Annotation configuration for one event type on a dashboard

JSON representation
{"displayName":string,"eventType":enum (EventType),"filter":string,"enabled":boolean,"resourceNames":[string]}
Fields
displayName

string

Solely for UI display. Should not be used programmatically.

eventType

enum (EventType)

The type of event to display.

filter

string

string filtering the events - event dependant. Example values:

"resource.labels.pod_name = 'pod-1'""protoPayload.authenticationInfo.principalEmail='user@example.com'"
enabled

boolean

Whether or not to show the events on the dashboard by default

resourceNames[]

string

Per annotation level override for the names of logging resources to search for events. Currently only projects are supported. If both this field and the per annotation field is empty, it will default to the host project. Limit: 50 projects. For example:

“projects/another-project-id”

EventType

Predefined event types.

Enums
EVENT_TYPE_UNSPECIFIEDNo event type specified.
GKE_WORKLOAD_DEPLOYMENTPatch/update of GKE workload.
GKE_POD_CRASHCrash events for a GKE Pod.
GKE_POD_UNSCHEDULABLEScheduling failures for GKE Pods.
GKE_CONTAINER_CREATION_FAILEDFailure to create a GKE container.
GKE_CLUSTER_CREATE_DELETECreate/delete of a GKE cluster.
GKE_CLUSTER_UPDATEUpdate of a GKE cluster.
GKE_NODE_POOL_UPDATEUpdate of a GKE node pool.
GKE_CLUSTER_AUTOSCALERGKE cluster autoscaler event.
GKE_POD_AUTOSCALERGKE pod autoscaler event.
VM_TERMINATIONTermination of a virtual machine.
VM_GUEST_OS_ERRORGuest OS error on a virtual machine.
VM_START_FAILEDStart failure on a virtual machine.
MIG_UPDATEUpdate of a managed instance group.
MIG_AUTOSCALERAutoscaler event for a managed instance group.
CLOUD_RUN_DEPLOYMENTNew deployment of a Cloud Run service.
CLOUD_SQL_FAILOVERFailover of a Cloud SQL instance.
CLOUD_SQL_START_STOPStart/stop of a Cloud SQL instance.
CLOUD_SQL_STORAGEStorage event for a Cloud SQL instance.
UPTIME_CHECK_FAILUREFailure of a Cloud Monitoring uptime check.
CLOUD_ALERTING_ALERTAlerts from Cloud Alerting
SERVICE_HEALTH_INCIDENTIncidents from Service Health
SAP_BACKINTAgent for SAP Backint related events.
SAP_AVAILABILITYAgent for SAP availability related events.
SAP_OPERATIONSAgent for SAP operations related events.

Methods

create

Creates a new custom dashboard.

delete

Deletes an existing custom dashboard.

get

Fetches a specific dashboard.

list

Lists the existing dashboards.

patch

Replaces an existing custom dashboard with a new definition.

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-12-11 UTC.